Skip to main content

Full text of "Your_Commodore_Issue_03_Dec_84"

See other formats


YOUR BEST INDEPENDENT COMMODORE MAGAZINE 




NEWS, SOFTWARE AND BOOKS-the pick of the bunch 
EXPERT GUIDANCE AND HELP WITH YOUR PROGRAMMING 

THE COMMODORE 16 HAS LANDED 
will it bury the opposrtiqn2^--^V 



_ ^ 







More MIDI magic 



flNDING NO JOY WfTH JOYSTICKS? 

Our review will help 



commndnri' 



6\ 



HShVIDEOLAND 




PURE MAGIC! 



Join Alice in her journey through Videoland - an enchanted place populated by strange creatures such as bread-and- 
butterflies and pipe smoking caterpillars; where little girls change size and flamingos turn into croquet mallets! 

Alice in Videoland is a revolutionary new concept in entertainment for the Commodore 64. incorporating some of the finest 
graphics ever seen on any home computer, accompanied by a charming musical score. There are four different game scenes 
involved, and your performance in earlier ones will affect your ability to get through later ones and determine your eventual 
total score. 

Scene One - Stunning title page graphics give way to the first game scene as Alice falls into the rabbit's warren. Score 
points for collecting the objects to be found there - including keys to open doors, bottles to make her smaller, cakes to make 
her bigger! 

Scene Two - Out in the garden the Cheshire cat looks on as Alice meets the pipe-smoking caterpillar. Help her to catch the 
bread-and-butterflies and the rocking-horse flies that change into the balls used in the croquet game in the last scene! 
Scene Three - Alice is a pawn in the chess game where her opponents are the Jabberwocky and Tweedledum and 
Tweedfedee. Help her across the board by protecting her with your White Knights! 

Scene Four -The most bizarre croquet game everl Help Alice hit the balls through the playing-card-soldier hoops before 
the Queen of Hearts stomps on them! 

Alice in Videoland is available for the Commodore 64 on disk - £12.95. and now on cassette - £8.95. 
Alice in Videoland features graphics created with the Koala Pad. 



•Audiogenic 

P.O. BOX 88. READING. BERKS. 



LTD 



SEND FOR 



COLOUR CATALOGUE I 



Your editor spares a 
few seconds of her 




precious time t 
introduce another 
issue of Yo 
Commodor 

WELCOME TO THE THIRD 
issue of Your Commodore. If 
you've already fingered 
through (he pages then I 
needn't tell you that, 
once again, it's jam-packed 
with the latest news, re- 
views, games, utilities, 
special features and much, 
much more. If not. then bear 
with me until curiosity tempts 
you to turn the page. 

Since you last feasted your 
eyes upon a copy of Your 
Commodore, they've been 
working their fingers to the 
bone over at Commodore. Not 
only have the long-awaited 16 
and Plus 4 machines been 
launched and exhibited to the 
world at large, but a host of 
new peripherals and software 
has also been released. How 
will the 16 fare in the face of 
growing competition? Read 
our article and judge for 
yourself. Commodore have 
also finally unleashed their 
Commodore 64 Communic- 
ations Modem and CompuNet, 
the new on-line service for 
Commodore users. But you'll 
have to see next month's Your 
Commodore for the low-down 
on this. 

Showtime 

Everybody loves a show and the 
7th PCW show was certainly no 
exception as thousands of 
computer moguls, journalists, 
games freaks and would-be 
programmers trudged through 
the corridors of Olympia 2 
from 19th-23rd September. 
With winter already well 
underway and Christmas on 
the horizon, the time is ripe 
and the market ready for new 




releases — all too evident with 
the hoards of offerings from 
software houses up and down 
the country. Wares displayed 
included not only the new 
Commodore machines but a 
tide of software, books and 
peripherals such as Currah's 
Speech 64. 



Lend me your ears 

Talking of which. Your 
Commodore is louder this 
month. Cone are the days 
when the only hint of music 




6\ 




0SB1DSIB 




f TVfosiCak: 




emitting from the confines of 
your house might be Radio 1 or 
you enjoying your early 
morning bath. Your Com- 
modore is competing in the 
music stakes. We bring you the 
second installment of our two- 

Sart MIDI series and we also 
ope to set your fingers tap- 
ping and your ears buzzing 
with a guide to two soft- 
ware packages — MusiCalc 
and Music Master — which 
transform your Commodore 
into a music synthesiser. 
Whoever suggested that 
new technology was breeding 
a nation of philislines? 

Reader input 

But. as much as we pester 
software houses in pursuit of 
the latest releases for exposure 
by our reviewers, toil as we may 
over our trusty typewriters to 
bring you erudite and 
entertaining articles, where 
would we be without you, our 
readers? We anxiously await 
your praise and criticism, your 
comments and ideas. Are we 
catering for your needs? Are 
there too many games — or not 
enough? Is the general tone 
too serious — or too 
lighthearted? We're quite 
amiable here — so drop us a 
line or give us a call. Praise or 
abuse us — we don't mind so 
long as you get your views 
across. Thank you to everyone 
who has already put pen to 
paper: we shall endeavour to 
answer all your letters. 

Your comments reveal a 
world of frustrated VIC 20 
owners. We want to fulfil your 
needs — but our supplies are 
low. So, how better to pass 
those long winter nights than 
by retiring to a warm corner 
and conjuring up weird and 
wonderful games and utilities 
on your VIC 20. And. of course, 
we don't expect you 64 
'programmers extraordinaires' 
to be sitting idle either. Get 
tapping and share your genius 
with us humbler mortals! Send 
your output to the editor: 
you'll findthe editorial address 
on the next page. 



I 




turn utc ** «i * •mi im mmmmm 
m COMMODORE 16 HAS LAMXD- 

wBflllllll" IIIWIillMI? 



sManwrwarsnaa* 



VOLUME 1 
NUMBER 3 
DECEMBER 1984 

Editor: Wendy J Palmer 
Editorial Assistant: Alison Hjul 
Advertisement Manager: Mike 
Searue 

Advertisement Copy Control: 
Sue Couchman 
Chairman: |im Connell 
Origination: Ebony Typesetting 
Design: MM Design 

Editorial & Advertisement Office 
No 1 Golden Square, 
London W1R 3AB 
Telephone: 01-437 0626 
Telex: 881 1896 

Your Commodore is a monthly 
magazine appearing on the first 
Friday of each month. 

Distribution by: Argus Press 
Sales & Distribution Ltd, 12-18 
Paul Street, London EC2A 4JS. 
Printed by: Alabaster Passmore 
& Sons Ltd, Tovil, Maidstone, 
Kent. 

Subscription rates upon 
application to Your 
Commodore Subscriptions 
Department, Infonet Ltd, Times 
House, 179 The Marlowes. 
Hemel Hempstead, Herts. HP1 
IBB. 

The contents of this publication 
including all articles, designs, 
plans, drawings and programs 
and all copyright and other 
intellectual property rights 
therein belong to Argus 
Specialist Publications Limited. 
All rights conferred by the Law 
of Copyright and other 
intellectual property rights and 
by virtue of international 
copyright conventions are 
specifically reserved to Argus 
Specialist Publications Limned 
and any reproduction requires 
the prior written consent of the 
Company, c 1984 Argus Specialist 
Publications Limited. 



DATA STATEMENTS 9 



We bring you up-to-dale with the latest 
news on the Commodore front. 



INPUT/OUTPUT 



E 



Your chance to air your views or ply us with 
questions. 



MASTERING MACHINE 
CODE 18 



We take a further in-depth look at the 
computer's native tongue. 



ANACONDA 



Wind your way around the screen with this 
fast and furious game. 



TURBO 64 


38 


Speed up program loading time w 
invaluable utility for your 64. 


th this 


PYRAMID 


40 


Bury yourself with this great game. 


GRIPPING STUFF 


42 


Get stuck into our joysticks review. 


SOFTWARE 
SPOTLIGHT 


46 



Once again, our reviewers have been 
working all the hours God sends to give 
you the low-down on more exciting Corn- 
more games and utilities. 



VIC GAMES 
PROGRAMMING 



More games tips for VIC 20 enthusiasts. 



PRINT USING ON 
THE 64 



54 



Perfect formatting of numerical data with 
this handy utility. 



CLIFF 

HANGE1 




16: COMMODORE'S 
LATEST NUMBER 



28 



GATOR 



□ 



We explore the smaller of Commodore's 
new machines. 



Just when you thought it was safe to go 

down to the river again Can you outwit 

the Gators? 



THE BASIC FACTS 
PT. 3 



34 



TALES FROM THE 
CRYPT 



60 



Conditional processes and loops feature in 
this month's look at BASIC. 



No, it's not another offering from the 
Hammer House of Horror but merely 
Runecaster in pursuit of further adventure. 




With (he cold, dark nights drawing in, why 
not curl up beside a roaring fire with a good 
book? 



MIDI REVISITED 



□ 



Strike a chord with the second part of our 
series on this novel musical interface. 




DIGITAL DUET 


74 


We review two pieces of music 


software for 


the Commodore 64. 




DOING IT 




YOURSELF 


80 



Turn your 64 into a business system with the 
minimum of expense and effort. 




MULTIPLE FILE 
COPY 



■ COMPUTERS IN 
BUSINESS 



Protect your most valuable programs with 
this utility. 



82 



Discover the computing wholesale 
business West Country-style in the 
company of PCS South-West. 



SPACE BATTLE 



70 



Fend off those aliens with this game for the 
unexpanded VIC 20. 



SHOWDOWN AT 
OLYMPIA 



We take a look at some of the new releases 
on display at this year's PCW show. 



DESIGN 64 



BEHIND CLOSED 
DOORS 



88 



Create your own characters with this 
character generator for the 64. 



We open the door to reveal John Wagstaff 
and Craig Communications. 




Are you only using 

To play only games J^>n a Commodore And for Jr these you need peripherals. 



play only games 
computer is like asking Albert Einstein to work out 
the square root of four. 

The computer's brain barely ticks over. 
To really stretch it, you need more interesting 
software programs. For example, record keeping, 
interactive education, stimulating adventure games 
or word processing. 



Like a Commodore disk drive, a really fast 
storage and retrieval system with a vast memory. 

Or a Commodore cassette unit, the 
inexpensive way of loading and storing programs. 

For those who like the idea of text and graphics 
being more alive and having greater clarity than 
on a TV, there's the Commodore colour monitor. 






^^^^^^^^^ 


■ 










' I mm 






Dot matrix pnnter £230.00 
Tractor feed Pnnt speed: 
50 character per second 



COMMODORE MPS802__ _□ 
Dotmatm pnnter £34500 
Friction feed lor standard 
paper Pnnt speed 
60 characters per second 



COMMODORE DFS1101 U 
Daisy wheel pnnter £39999 
Letter quality pnnt on 
all types of paper Pnnt speed: 
16 characters per second 



XiMMGDORE I520 



□ 



Pnnter plotter £16999 for 
charts and graphs Pnnt speed 
14 characters per second 



:OMMODORE 1541 



□ 



Disk dnve £22900 

170K memory 5 '/<" diskette 



COMMODORE 1531 



□ 



Cassette unit £44 95 
For Commodore 16 and 
Commodore pfus/4. 

COMMODORE 1530 

£44 95 For Commodore &4 



COMMODORE 1701 



□ 



Colour monitor £23000 

JOYSTICKS □ 

Ipnces from £7.501 

PADDIES l£1350l □ 

HeiaK correct at umf nl going tn cm 



Moth of your brain? 

And for hard copy, there are our three kw for further information tick one ior morei of the boxes above and 



copy, 

printers and a printer plotter. These will preserve 
on paper-in colour, black and white, chart form, 
graphs or text, the fruits of all your labour. 

•Finally, to make games playing more 
exciting, there are joysticks and paddles. 

So use your brain. And make sure you use 
all of your computer's brain. 



SEND TO THE COMMODORE INFORMATION CENTRE, 1 HUNTERS ROAD. WEID0N. CORBY. 
NORTHAMPTON NN17 1QX TEL CORBY (05361 205252 

NAME 

ADDRESS 



PE YC O 1284 

commodore 




An Argot P)» $»ft.M Pubhmtan 



am 



COMPUTING 

I For all CBM 64 Users 



• UTILITIES 

Gamesters delights galore — 
improved graphics, sounds, 
disassemblers - it's all here! 






64 Tape Computing 
adds a new dimension to your micro! 



Run this Argus 64 tape and you'll 
soon see why it's Britain's top selling tape 
magazine. Each issue gives you a variety of 
exciting and challenging games to play, 
reviews of other newly released 
software plus valuable utilities 
enabling you to write your own 
programmes and games. 




N.rfl»jrvliruip 



Stretch your imagination and skills with 
64 Tape Computing — available every 
other month from WH Smith, Menzies and 
other leading stores. 

(You'll see them advertised on TV 
from September!) 

Get your copy today! 



Argus Tape Magazines produced by 
ARGUS PRESS SOFTWARE 

1 Golden Square, London W1R 3AB 
Telephone: 01 437 0626 



Pride of place in this month's 
news from Commodore Busi- 
ness* Machines must go to the 
launch of their two new 
machines: the Commodore 16 
and the Plus/4. Howard Stan- 
worth. General Manager of 
Commodore Business Mach- 
ines (UK) Ltd., hopes that these 
two machines, along with the 
64. will "...form the strongest 
range on the market over the 
Christmas period". 

The Commodore 16 has 
been designed as a successor to 
the VIC-20 and will be sold in a 
complete starter pack at 
£139.99. It includes 16K RAM, a 
full typewriter-style keyboard, 
sophisticated sound capabili- 



Creditable interface? 



The Access Computer Com- 
pany of Stockport have deve- 
loped a serial interface and 
cable to connect most RS232 
serial printers to the Com 
modore 64, VIC 20 or SX64 
Portable. The unit, which is 
supplied with instructions and 
a 1-year guarantee, is available 
by Mail Order at £34.95 inc. 
VAT and post from Access 
Computer Company Ltd., The 
Computer Centre, 61 Shaw 
Heath, Stockport, Cheshire, 
SK3 8BH. Telephone 061-477- 
6013. 



ties, 121 colours for high- 
quality graphics and advanced 
BASIC. The starter pack con- 
tains the computer, cassette 
deck. Introduction to BASIC 
part 1 and 4 recreational 
software" packages. {The 16 is 
reviewed elsewhere in this 
magazine). 

The Commodore Plus/4 is 
described by Mr. Stanworth as 
"...an affordable home com- 
puter for the more serious 
user". And, in an attempt to 
prove this point, it comes with 4 
integral programs: word pro- 
cessing, database, spreadsheet 
and business graphics. But he 
does stress that the Plus/4 "...is 



no 



F»rWd 



in ess 



machine. It is a competitivelv- 
priced home machine ideally 
suited to the professional who 
wants to use it for productive 
applications". The Plus/4 
contains 64K RAM, of which 
60K is available to the user for 
BASIC programs and includes, 
amongst the more obvious 
facilities, advanced BASIC, 
screen window facility, a HELP 
key and simple cursor controls. 
It retails at £299.99. 

Both machines are being 
manufactured at the new 
Commodore factory in Corby 
and should be available at the 
end of September. 

Father Commodore also 
promises to stuff our Christmas 




stockings with other goodies. A 
new cassette deck, the 1531 
(cost — £44.95) and a new 
single disc drive, the 1541 (cost 
— £299) should soon be 
available. Also in the Com- 
modore Christmas package this 
year can be found two new 
printers compatible with the 
entire range of Commodore 
home computers. These are 
the MCS 801, a colour dot 
matrix printer, and the DPS 
1101, a low-cost letter quality 
printer; both models will sell 
tor £399. Both Commodore and 
the leading software houses are 
devel-oping a range of soft- 
ware for the 16 ancf the Plus/4. 



Show-down at 



Olympia 



The curtain was raised and the 
chips were down at the end of 
September for the Seventh 
Personal Computer World 
Show. Amongst the com- 
panies displaying their latest 
wares for the 64 were Anirog, 
Argus Press Software, Audio- 
genic, Bubble Bus, Creative 
Sparks, Melbourne House, 
Protek, Currah and many 
more. We reveal all about the 
PCW Showstoppers elsewhere 
in this magazine. 



E 



DATA 

STATEMENTS 



Get in touch with your 64 




Touchmaster Ltd. have releas- 
ed their pressure-sensitive 
surface which, complete with 
its own microprocessor, is able 
to interface with a range of 
micro and personal computers, 
including the Commodore 64. 
Touchmaster, as the device is 
called, hopes to overcome 
resistance to keyboard usage. 

The Touchmaster has an A4 
working surface and a resolut- 
ion of 256 x 256, The surface is 
fully linear across the active 
area and does not use any 
moving switches or similar 
devices. 

The company plans to 
develop a catalogue of soft- 
ware — to be called Touch- 
ware. The first releases of 
software specifically designed 
for the Touchmaster include 
graphic packages, educa-tional 
early learning programs, board 
games, arcade games, adven- 
ture games and programmer 
utilities. 

The complete package to 
be marketed will contain the 
Touchmaster, Touchware mul- 
tipart graphics program and 
other accessories required for 
immediate use with a home 



Currah speaks out 



New for the Commodore 64 
from Currah Computer Com- 
ponents Ltd. comes Speech 64 
which was developed in 
conjunction with General 
Instruments. It is an allophone 
speech synthesiser which 
means that it uses individual 
speech sounds strung together 
to make intelligible speech. It 
has an unlimited vocabulary 
and its makers claim it can 
synthesise any word or senten- 
ce in the English Language. 

Speech 64 features a 'Say' 
command which provides text- 
to-speech, a high and low voice 
eacn its own intonation and 
integral BASIC com-mands. It is 
a hand-sized unit which plugs 
directly into the back of the 
Commodore; sound is gener- 



computer. The recommended 
retail price is £149.95. Touch- 
master may be contacted at 
P.O. Box 3, Port Talbot, West 
Glamorgan, SA13 1WH. 





ated through the T.V. receiver. 

Currah^ speech synthesiser 
retails at £29.95. Currah may be 
contacted at Graythorp Indus- 



trial Estate, Hartlepool, Cleve- 
land, TS25 2DF. Telephone 
0429-729%. 

We hope to review Speech 



64 in next month's issue). 



PSS hit the road 



From the end of Seplember, 
Commodore 64 users can get 
on their bikes with the latest 
offering from PSS. Entitled 
Hyper Biker, it is a high quality 
representation of the popular 
craze, BMX biking. It enables 
up to four players to act out 
sophisticated biking man- 
oeuvres and, from a straight 
race, through obstacles, whee- 
lies, long jumps, high jumps 



and bunny hops to compete for 
the accolade of BMX champ. 

The bike is controlled via 
joystick or keyboard and track 
features include table top, 
whoop de doos, ramps, speed 
bumps, ditches and drop offs. 

Hyper Biker is available on 
cassette at £7.95. PSS may be 
contacted at 452 Stoney 
Stanton Road, Coventry, CV6 
5DG. 



rHVPFP 



Available on Cassette £7*95 





KBOULCBP 

I! cosh 



Statesoft 



In the wake of their success 
with their CBM games. Astro 
Chase and Flip Flop, State Soft 
Ltd. have released to new 
games for 64 users, Boulder 
Dash and Bristles. 

In Boulder Dash, our hero, 
Rockford, has to avoid crashin 
boulders, walls of rock an 
assorted creatures as he digs for 
the gleaming jewels. In pursuit 
~)of the diamonds, he must turn 
his enemies to his advantage — 
for example, butterflies may be 
turned into precious stones. 
The mysterious escape tunnel 
is revealed only once the 
required number of diamonds 
have been collected. The game 
includes 16 mystical caves with 
a playable intermission after 
every 4, and 5 levels of 
difficulty. 

For all non-DlY enthusiasts. 
Bristles takes the pain out of 
decorating. The object is to 



paint all the rooms in a building 
without losing your brushes 
before time runs out. There are 
8 different game screens and 6 
skill levels tor each building; 
your target is to paint all 8 
buildings in each level. While 
fulfilling your task, you must 
avoid the Bucket Chucker, the 
Dumb Buckets and flying Half- 
Pints. Lifts and stairs are 
provided for your transporta- 
tion — but beware the 
caretaker's daughter as she 
daubs your carefully painted 
walls with her hand prints! 
Your efforts are rewarded with 
prizes. 

Both games are available on 
cassette and retail at £8.95. State 
Soft are at the Business & 
Technology Centre, Bessemer 
Drive, Stevenage, Hertford- 
shire, SG1 2DX. Telephone: 
0438-316561. 



Creating another Legend 



Legend, creators of the 1984 
Game of the Year, Valhalla, 
have announced details of 
their latest release. The Great 
Space Race. Scheduled for 
release on the Commodore 64 
in late September/October, 
chairman John Peel describes it 
as a "...completely new kind of 
computer entertainment — 
one that goes beyond arcade 
and adventure games, but 
retains the best elements of 
both". 

He certainly believes Leg- 
end's newest baby looks good. 
With a revolutionary operating 



system, MOVISOFT 2, Mr. Peel 
claims that "...true solid 3D 
graphics..." have been achiev- 
ed and advanced graphics 
enable the characters on- 
screen to be seen "...in detailed 
close-up". 

The game falls into two 
phases. In the pre-race section, 
you must compete for the best 
spaceships, weapons and per- 
sonnel for your team. The 
event itself involves a race 
against "...time, natural obsta- 
cles and your competitors". 

Using a new form of single 
key-press commands, The 



Great Space Race enables 
characters to offer you options 
based on their current situation 
through an 'options gene- 
rator' constantly monitoring 
game development. 

The Great Space Race costs 
£% million to produce which is 
thought to be the largest 
amount ever spent on the 
development of a single game. 

Legend may be contacted at 
P.O. Box 435, Station Road, 
London E4 7LX; telephone: 01- 
524-8324/5. 




DATA 

STATEMENTS 



The Professionals 



Audiogenic Lid. has launched 
their Professional Range of 
business application software 
for the Commodore 64. The 
three packages in the range are 
a word processing system, 
Micro Wordcraft, a spread- 
sheet facility, Swift, and their 
database system, Magpie. 

All three packages are disc- 
based and retail at the 
following prices: Wordcraft — 
£24.95; Swift — £19.95; Magpie 
— £39.95. Audio-genic Ltd. may 
be contacted at 39 Suttons 
Industrial Park, London Road, 
Reading, Berks RG6 1AZ. 
Telephone: 0734-664646. 



Terminal Laziness 



Terminal Software has been far 
from idle in developing 'Lazy 
Jones', their new game for the 
64. There are 18 doors in all 
and, behind each, lies the 
opportunity for Lazy Jones, the 
most indolent hotel cleaner in 
the trade, to avoid work: he 
can play games, hide in the 
broom cupboard, drink in the 
bar or go to the toilet — 
anything to avoid the irate 
manager or the ghost of the 
previous manager. 

'Lazy Jones' features a split- 
screen window and retails at 
£7.95. Terminal Software are at 
Derby House, Derby Street, 
Bury, BL9 ONW. Telephone: 
061-761 4321. 



Things that go bump in the night 



E 



Who would have thought it? 
David Darling (18) and his 
brother Richard (16) always 
seemed such ordinary young 
men but then unexpected 
things started happening 
round them. It all began at the 
beginning of 1981 in Canada 
when they acquired a VIC-20. 
From that moment on they 
found they had a talent, an 
unexplained power, call it what 
you will, which they have been 
attempting to harness ever 
since. At first it was just 
ordinary sprites they called up 
but more recently those sprites 
have been transforming them- 
selves into a complete demon- 
iacal hierarchy: gnosts, ghouls, 
zombies and poltergeists. The 
source of this power has been 
traced to their Commodore 64. 

Surprisingly, nobody seems 
to be at all concerned. Rather 
the opposite for the Darling 
brothers are in fact the authors 
of the new game for the CBM 
64 from Mastertronic called 
Chiller. In it you are given the 
task of rescuing your fair 
beloved from a haunted 
mansion whilst warding off the 
unwanted attentions of the 
afore-mentioned denizens of 




the underworld. And at £1 .99 at 
least you're assured of a cheap 
thrill. 

This energetic pair who 
have so far written 35 games 
including about a third of 
Mastertronic's output (see 
Space Walk and BMX Racer, 
both for the CBM 64). are also 
working on a games designer 
for the new Commodore 16. 
This will be their third games 
designer this year and follows 
the one they did for the VIC-20, 



Hit 




Ma 




released on the Galactic label, 
and the Games Creator for the 
CBM 64. due for imminent 
release from Mirrorsoft. 

The C-16 version should be 
ready in about 2 months time 
and will be marketed by 
Commodore itself. The broth- 
ers have already been workin 
on a C-16 for a couple o 
months now, so Your Com- 
modore was obviously interest- 
ed in their opinion of the 
machine. "In most respects it is 



as good as the 64 — the two 
disadvantages are the lack of 
sprites and the sound," they 
told us. Still, a good games 
designer should go a long way 
to relieving the first problem. 

So, with all this activity it 
looks very unlikely that the 
Darling brothers will be 
disappearing without trace. 

Mastertronic can be con- 
tacd at Park Lome, 111 Park 
Road. London NW8 7JL; 
telephone: 01-402-3316. 



Toil and trouble from 
Creative Sparks 




News 



Creative Sparks have annou- 
nced the release of their new 
adventure game for the Com- 
modore 64, Macbeth — the 
Computer Adventure. Based 
on the Bard's gruesome trag- 
edy the game comes as two 
fast-loading cassettes, with a 
full set of instructions, 
plus a complete text of 
the play. The player can 
participate in four independ- 
ent adventures, plus psycho- 
analysis sessions giving the 
player an insight into the aims 
and motivation of the leading 
characters. The adventures all 
differ from one another in style 
and content; each depicts a 



Art tor Commodore's sake 



scene from Shakespeare's 
original play. 

Creative Sparks are part of 
THORN EMI; David Gearing, 
general manager for THORN 
EMI Computer Software Pub- 
lishing says of Macbeth "We 
are delighted to be publishing 
this ingenious package... It is 
full of unexpected twists and 
turns, rich in different mean- 
ings, alive with fresh possibilit- 
ies^'. 

Macbeth — the Computer 
Adventure retails at £14.95. 
Creative Sparks can be contact- 
ed at THORN EMI Computer 
Software, Thomson House, 296 
Farnborough Road, Farn- 
borough, Hants. Telephone: 



The first prize of a £5,000 
endowment and £1,5000 worth 
of computer equipment in the 
world's first competition to use 
home computers to create 
works of art, the Commodore 
International Art Challenge, 
went to Hugh Riley, a young 
unemployed art graduate. As a 
result of his winning entries in 
the 18+ Dynamic category, 
Louis (Meditation Failure 
126) and Obsessiveness, Mr. 
Riley will be able to use the 
endowment to study computer 
art at a prestigeous educa- 
tional establishment in any 
country of his choice and 
hopes, as a result of this unique/ 
opportunity, to pursue a career uj 
in computer graphics. 

The awardwas presented by 1 
Professor Brian Allison, World 
President of the International 
Society for education through 
Art, at a ceremony at London's 
Hamilton Gallery. Professor 
Allison commented that "The 



Commodore sales 



Commodore Art Challenge has each category received £1,500 



revealed a fascinating new area 
for art and for home com- 
puters. I am convinced this 
initiative and the exhibition of 
computer pictures are just a 
glimpse into a future which will 
see art and technology increas- 
ingly working together". 

The competition was divi- 
ded into Still and Dynamic 
entries and under 12, 12-17 and 
18+ age groups: the winners in 



worth of Commodore equip- 
ment of his or her choice, as did 
Mr. Joachim Wester of Sweden 
with his entry, 'Mr. Freaken- 
stein', winner of 
the best non-UK 




it* 



boost 



Commodore UK's sales topped 
the £100 million mark during 
the last financial year, thus 
attaining an all time record and 
making the company a major 
contributor to Commodore 
International's record $1.27 
billion sales for the year ended 
30 June. Mr. Howard Stan- 
worth, General Manager of 
Commodore Business Ma- 
chines (UK) Ltd., believes that 
"...in revenue terms..." this 
makes Commodore "...the 
undisputed leader in the British 
home computer market". 



New face at Commodore 



Rae Potter has been appointed 
as new Software Products 
Marketing Manager at Com- 
modore UK. He expects to be 
"...looking particularly for 
software which actively ex- 
ploits the full capabilities of our 
machines — not only the VIC- 
20 and Commodore 64, but also 
the new Commodore 16 and 
Plus/4 home com-puters". Mr. 
Potter believes that: "The mass 
market for software has arrived 
and with the imminent launch 
of the new Commodore 16 and 
Plus/4 computers. Commo- 
dore is in an unprecedented 




position to dominate, not only 
in hardware, but also in 
software". 



Commodore dealers will now 
be providing 3 software 
packages with every 8296D 
business machine sold. These 
are: Superscript, a wordpro- 
cessing package including 
Spelling Checker; The Mana- 
ger, a comprehensive database 
and file management packag 
and Calc Result, a tinancia 
planning spreadsheet. 

The 8296D with integral 
2Mbyte floppy disc drive, 128K 
RAM, monitor, keyboard and 
the aforementioned software 
packages retail for £1,690 
excluding VAT. 



News 



DATA 

STATEMENTS 




CompuNet launch 



The PCW show will see the 
launch of the Commodore 
Communications Modem and 
their new database, service, 
CompuNet, initially available 
only to Commodore 64 users. 
The first year's subscription to 
CompuNet is free with the 
purchase of the Commodore 
Modem, which costs £99.99. 




New modem 



Cirkitt Holdings PLC has 
developed a modem which has 
full British Telecom approval 
and, so they claim, at £59.95, is 
less expensive than any equiv- 
alent equipment. The modem 
took under six months to 



design and bring to the market, compatible with most personal 

It is to be marketed by Protek computers on the market, 

Computing Limited wno have including the Commodore 64. 

worked closely with Cirkit on Cirkit and Protek are predict- 

its development and have ing modem sales of £2 million 

produced a range of interface over the next 18 months, 
packs to make the modem Cirkit Holdings PLC can be 



contacted at Park Lane, Brox- 
bourne, Herts EN10 7NQ. 
Telephone: 0992-444111. 



BIGGER, BOULDER^ BE AUTIFUL 

AMERICAN NO I. 




Q Eoxaen 



commodore 

6\ 




ECLLCEF 
Cfl5H 




CASSETTE 8*5 DISK IO-95 



1.MOU 

• MM m <■ «i mi 

»-.--- >". I—MI I 



-I . • -II IM. 



State Soft Ltd, 

Business & Technology Centre, 
Bessemer Drive, Stevenage, 
Hertfordshire SG1 2DY. 
Phone (0438)316561. 




They came from out of the desert to 




the HORROR of the ANTS 



mmm 




WH SMITH 




Letters 



Whether your forte 
lies in preaching or 
praising, asking or 



OUTPUT 



useful hints and tips 
to fellow Commodore 



users. 



Dear Sir, 

All those Commodore 64 users 
who cannot get their voice two 
to work, don't take the 
computer back to the shop. 
There is nothing wrong with it; 
the manual is wrong. On page 
161 the waveform for voice two 
is 54283 and not 54288. 

Here's another tip tor you 
64 users. POKE56325.X (X=1 to 
255). This will speed up the 
cursor and is very useful when 
editing long lines. 
Yours faithfully, 
William Fong, 
London. 



Dear Sir. 

In reply to). Lee (Input/Output 
- October issue), I also have a 
Commodore and Brother EP22 
series printer. He may find it 
useful to note that the interface 
I have found most suitable is 
the Stack for the VIC 20/CBM 
64 ftom: Stack Computer 
Services Ltd., 290-298 Derby 
Road. Bootle. Liverpool, L20 
8LN. Also, the cable he receives 
may be wired incorrectly: 

Computer end pins 
TO 

Printer end pins 

The most reliable commands 
found to date are: 

To take a listing 

OPEN 2,2,2.CHR$(2)*CHR$(0): 

CMD2 

LIST A-B (Max. 60 lines) 

LIST B-C etc. 

PRINT&2 

CLOSE 2 

CMD3 

To use within a program: 
The OPEN statement should be 
used before the DIM$ 
statements, and programs used 
with the OPEN in a GOTO/ 
COSUB routine should have 
this line deleted and moved to 
the top of the listing /e: 



10 PRINT "HELLO" 

20 OPEN 2,2,2,CHR$(2)*CHR$ 

(0) 

30 DIM A etc 

OPEN 4.4 will not work. The 

interface cable and printer all 

work well. 

Yours faithfully, 

5 K Thoanber, 

Hull. 

Dear Sir, 

What a super magazine - it is 
magnificent! As I was browsing 
along the magazine shelf I 
noticed your magazine 
screaming to be looked at. 
After a quick look I promptly 
bought and raced home to 
look at it; as a VIC 20 owner 
myself I bought it to seek out 
new talents. The reason it is so 
different is because all the 
other Commodore magazines 
focus mainly on one thing: the 
CBM64. Most of the programs, 
hints, reviews and information 
are on this machine. I 
congratulate you on seeing the 
light for us poor VIC ana PET 
owners. Your article entitled 
'Vic Games programming' was 
exceptionally good. 

How about including the 
top ten tables of software for 
the VIC and 64. And, how 
about doing reviews of 
Commodore's new computers, 
the CBM 16 and Plus 4. 
Yours faithfully, 
Andrew Philpott, 
Hertford. 

We answer, 

We are delighted that Mr. 
Philpott, and all the other 
readers who showered us with 
praise, like our magazine. We 
shall endeavour to keep you 
happy and hope you will 
continue to send us your 
comments and bright sug- 
gestions for future articles, 
games, etc. Please, please 
inundate us with VIC 20 stuff as 
we're in short supply! Finally, 
you can find a review of the 
Commodore 16 elsewhere in 
this magazine. We hope to 
review the Plus 4 next month. 

Dear Sir, 

I have a Commodore 64 and I 
am very interested in 
becoming a member of 
CompuNet. I would appreciate 
it if you would send me details 



on how much it would cost to 
join, what would be the most 
suitable modem for my 
computer and. also, how much 
the modem would cost. 

Could you please give me 
more information about how 
CompuNet works and, also, tell 
me where my nearest main 
Commodore supplier is. 
Yours faithfully, 
Steve Paterson, 
Livingston, Scotland. 

We answer, 

The only modem suitable for 
use with CompuNet is 
Commodore's own Modem 
which retails at £99.95. On 
purchase of this modem you're 
entitled to one year's free 
membership of CompuNet 
(worth £30). For information on 
how CompuNet works, see the 
review in our next (January) 
issue. The modem is only 
available, at the time of going 
to press, directly from 
Commodore Business Mac- 
hines (UK) Ltd. at 1 Hunters 
Road, Corby, Northants. The 
nearest main Commodore 
supplier to Mr. Patterson in 
Livingston is Peritronic Ltd. at 
Lomand House, Almond Vale, 
Livingston, West Lothian- 
Telephone: 0506-410041. 

Dear Sir, 

I have recently bought a 
Commodore MPS 801 printer 
for use with my 64 and. as well 
as the standard 11 by 9.5 inch 
paper for the printer I have also 
acquired for free 2000 sheets of 
7.5 inch paper. I should like to 
use this narrower paper for 
program listings but. when 
doing this, the longer program 
lines are printed off the edge of 
the paper. I would like to know 
if there is any way of making 
the printer print shorter lines 
when using the list command 
as this would save me a lot of 
money buying expensive 
printer paper. 

Congratulations on your 
first edition of one of the best 
magazines for the Commodore 
user. 

Yours faithfully, 
W.L. Williams, 
Dyfed. 

We answer, 

Can any of our readers answer 
Mr. Williams' 'cri de coeur7 



Dear Sir. 

I own a Commodore 64 and 
have recently bought the 
'PETSPEED' compiler. This 
gingers up some of my ordinary 
BASIC programs but I cannot 
make it work on even the 
simplest High-Res program 
sucn as those to clear the 
screen and draw a circle. My 
BASIC program is taken 
straight out of the 'Program- 
mer s Reference Guide' (pages 
122-123 and 126-127) and runs 
perfectly (though appallingly 
slowly). I have added a very 
simple machine code program 
which clears the screen and 
puts it into High-Res 
instantaneously, but of course 
thereafter the drawing is as 
slow as ever. The PETSPEED 
will not run this either; but, if I 
include a command in the 
PETSPEED program to load the 
machine code program from 
disc, the screen does clear - 
and nothing else happens. It 
refuses to carry on drawing the 
figure and the screen remains 
blank until I hit RUN/STOP 
RESTORE. In every case, the 
compiling seems to be error- 
free, but the result doesn't run. 

The base for the 'bit-map 
memory is 8192. Since the 
compiled program seems to 
occupy about 8450 bytes (most 
of which is, I believe, the 
PETSPEED interpreter), I have 
tried altering the base to 10240 
or even beyond, so as not to 
interfere. The effects of this 
are, firstly, that only the lower 
two thirds of the screen are 
cleared and the top third after 
the final 'paint' is covered in 
vertical bars; and, secondly, 
although the circle gets drawn, 
its centre is very much 
displaced (though this can be 
remedied by changing two 
constants in the program). This 
program compiles alright too, 
but won't run either (in the 
compiled version). 

I attach copies of the two 
programs. As you can see, they 
are very short and simple. 

Can you offer any advice? 
Where am I going wrong? And 
where can I find some 
literature more explicit and less 
superficial than the 'Reference 
Guide'? 
Yours faithfully. 
M.W. Peters. 
Dorset. 

We answer, 

Try putting the high-res screen 
down to 32768 and paging the 
VIC II chip to look at the third 
16K block of RAM. Currently, 
your high-res screen is 
corrupting your program. 

See our guides (in this issue 
and in previous issues of 'Your 
Commodore') to the vast 
output of literature available 
for Commodore users. 



E 



A. P. and D.J. 
Stephenson explore 




MASTERING 
MACHINE CODE 



ONE COMPLETE ORDER TO 
the microprocessor is called an 
instruction. The 6510A has a 
repertoire, called the 
Instruction Set, of almost 60 
different types but, because 
most of them are available in 
several different forms, the 
total number of permutations 
rises to several hundred. Such a 
huge number to choose from 
can be frightening to the 
newcomer. Because of this, we 
feel that presenting the full 
repertoire at this stage would 
be more confusing than 
helpful. Fortunately, only a 
relatively small proportion of 
the totaf number are in regular 
use. In fact, it is possible to 
begin writing workable 
machine code programs by 
restricting the repertoire to 
twenty or so instructions. 



The instruction format 

A machine code instruction 
represents one complete order 
to the microprocessor and 
normally consists of two 



has a verb but no noun so is 
incomplete. There are 
normally two parts of a 
machine code instruction, the 
operation code and the 
opera no*. 

The operation code 

This corresponds to the verb 
because it tells the micro- 
processor what particular 
action is required. In general, 
the op-code can be a 
decimal number, a pair of hex 
digits or, if you have an 
assembler, a three-letter group 
known as an instruction 
mnemonic. Every instruction 
has a unique code number. 
Unless you have additional 
software aids, the only way to 
enter an op-code on the 
Commodore 64 is by POKing a 
decimal number. This is an 
awful method because 
decimals and machine code are 
alien to each other. Machine 
code programming is not the 
easiest or subjects and if we 
have to work entirely in 
decimal op-codes, the task 



Verb 


Noun 




Op-code 


Operand 




^lllllllllllll 




■X-XvX-l 

'•X'X'X*!*! 
■X-XvXvl 


Figure XI The instruction format 



distinct parts as shown in Figure 
3.1 

As in everyday speech, any 
order given to a person consists 
of two parts, the verb (what 
particular action is required) 
and the noun (which particular 
object is to receive the action). 
For example, suppose we 
instruct someone to luck'. The 
person is confused because, 
althoueh he knows how to 
kick, he has not been told 
which particular individual or 
object requires kicking. In 
other words, the instruction 



borders on the horrific. We 
shall not attempt to use 
decimal op-codes at all. As 
mentioned in Part 1 of this 
series, if you intend to take 
machine code programming 
seriously, you are strongly 
advised to get hold of an 
assembler as soon as you can. 
However, for the benefit of 
readers who feel that the extra 
expense is not justified, a 
simple program will be given 
later, enabling all machine 
code programs to be entered in 
hex instead of decimal digits. 



The operand 

This is the second part of the 
instruction, corresponding to 
the noun. It informs the 
microprocessor where the data 
(to be acted upon) can be 
found. The operand, in most 
cases, will be the address of the 
data. There are, however, 
several different ways of 
specifying the address. They 
are known as addressing 
modes. Some instructions may 
have as many as seven different 
addressing modes, whilst 
others may nave only one. The 
operand can be specified in 
decimal or hex but, here again, 
hex addresses are much easier 
to work with. 



Simple addressing 
modes 

The most commonly used 
instruction in the repertoire is 
LDA so we shall use it for 
illustration purposes where 
ever possible. LDA is an 
assembler mnemonic for 
LoaD Accumulator. It is used to 
place data into the accum- 
ulator. The whereabouts of the 
data is specified by the operand 
according to the addressing 
mode used. At this point, only 
three of these addressing 
modes will be described. 

Immediate addressing 

Memory is not involved 
because the operand specifies 
the data. This data will be 
specified by two hex digits (one 
byte) within the range 00 and 
FF. 

Suppose we want to load 
the accumulator with the hex 
number 05 and we have an 
assembler resident. The way in 
which the instruction is written 
depends on whether an 
assembler is used or whether 
you must use direct hex code. 
Both forms are given below: 



Assembler 
LDA#$05 



Hex code 
A9 05 



Notice that the assembler 
requires the character '$' to 
indicate the number is in hex 
and the character '#' to 
indicate immediate addressing. 
In contrast, the hex code 
version is just two pairs of 
naked hex digits. The first pair 
of hex digits is always the op- 
code. The op-code for LDA, 
using immediate addressing, is 
A9. Why A9? Because the 
designers of the 6510A decreed 
it to be so. Without an 
assembler, you must either 
memorise the hex digit pair for 
every op-code (and there are 
over 200 of them) or consult the 
full instruction set of the 6510A. 
Perhaps this gloomy bit of 
information will act as a 
commercial break for the 
Mikro or Commodore 
assembler. It is called 
immediate addressing because 
the data is immediately 
available in the operand. It is 
used when we want to load 
constants. 

Absolute addressing 



This is used if the data byte, to 
be loaded into the accum- 
ulator, is in memory — 
anywhere in the 64K RAM. The 
operand is a four hex digit 
number (two bytes) specifying 
the memory address. You will 
remember that any address in 
the 64K memory map can be 
expressed with the aid of four 
hex digits. Suppose we wish to 
load the data byte, residing at 
address C2056 hex, into the 
accumulator. The assembler 
and hex code instruction 
become : 



Assembler Hex code 
LDA $2056 AD 56 20 



Notice that the hex op-code is 
now AD instead of A9. Notice 
also the strange reversal of the 
two operand Dytes in the hex 
code version. This is a standard 
rule when using 6510A hex 
code so we nad better 
emphasise it: 



If direct hex code is used 
without an assembler, all two- 
byte operand addresses must 
be entered in reverse order, 
low-byte first, high byte last. 

This is important enough to 
justify an extra example; the 
nex address 5472 must be 
entered as 72 54. The designers 
of the 6510A decided on this 
awkward twist because it led to 
more efficient organisation of 
the address bus. In machine 
code, the human is relatively 
unimportant so considerations 
of 'user friendliness' take 
second place to hardware 
efficiency. As can be seen in 
the example above, an 
assembler is a little kinder 
towards humans and the two 
operand bytes are entered in 
normal sequence. 

Zero-page addressing 

If the address of the required 
data happens to be on page 
zero ($0000 to SOOFF) it is 
possible, in fact it is normally 
desirable, to use page zero 
addressing. It is more efficient 
because the two leading zeros 
can be dropped, allowing a 
single byte operand to be used. 
For example, to load the 
accumulator with (he contents 
of the hex address 35, the 
assembler and hex code 
instructions would be: 



Assembler 




Hex code 


LDA $35 


A5 35 



We shall see later that page 
zero is very important because 

(a) two of the more exotic 
addressing modes only operate 
on data resident in page zero. 

(b) data retrieval is faster from 
page zero than from other 
areas of memory. 

Unfortunately, most of 
page zero has already been 
swiped by the resident 
operating system so there are 
very few vacant address 
locations left for the machine 
code programmer. In view of 
this, those which are left should 
be given VIP status and not 
used wastefully. We believe, 
although we can find no 
confirmation in Commodore 
literature, that: 



Free locations in page zero = 
$FB lo $FF inclusive. 



Indexed and indirect 
addressing 

These addressing modes are 
not so easy to understand and 
will be discussed in detail later 



in this series. However, for the 
sake of completeness, brief 
definitions are given below 
but, if you are completely new 
to machine code, don't worry 
too much about them yet. 

Indexed addressing 
with LDA 

The contents of one of the 
index registers is automatically 
added to the operand and the 
result is the address of the 
required data byte. Thus the 
same instruction can be used to 
access different addresses by 
simply altering the contents of 
the index register. There are 
three possible forms: 

(a) Zero-page indexed, where 
only the X register can be used 

(b) Absolute indexed, where 
either the X or Y registers can 
be used. Assembler and hex 
code formats, using arbitrary 
addresses, are as follows: 



used to access different data 
items simply by varying either 
the address pointers or the 
index register. Assembly 
format and hex coding, using 
arbitrary addresses, is as 
follows: 



Assembler Hex code 
LDA (SFB.X) A1 FB 



Indirect indexed 
addressing 

This is similar in general 
principle to indexed indirect, 
The essential difference being 
in the way indexing is used. 
Firstly, only Y can be used for 
indexing. Secondly, the 
contents of Y is added to the 
address pointer, rather than to 
the operand. An example 
should illustrate the difference. 
Using standard assembler 



Address type 
Zero-page,X 
Absolute. X 
Absolute.Y 



Assembler 
LDA $34,X 
LDA S3456.X 
LDA S3456.Y 



Hex code 
B5 34 
BD 56 34 
B9 56 34 



Note the comma is used to 
inform the assembler that 
indexed addressing is required. 



Indexed 
addressing 



indirect 



An indirect address is the 
address* of an address. This is 
not so bad as it sounds 
providing we first neglect the 
indexing by assuming that X (or 
Y as appropriate) contains zero. 
The operand is the low-byte 
address (which must be in page 
zero) of a two byte address 
pointer. The high byte of the 
pointer is in the next sequential 
location. As a preliminary 
example, using standard 
assembler notation, assume we 
write LDA ($FB,X). Assume that 
address $FB contains $56 (the 
low-byte of the pointer) and 
the next higher address 
contains SCO (tne high-byte of 
the pointer). The effect of the 
instruction is to load the 
accumulator with the contents 
of address SC056. However, 
things are a little more complex 
when the effect of the index 
register is taken into 
consideration. Suppose X 
contains the number 2 and we 
again write LDA (SFB,X). The 
low-byte address is now 
increased to $FB+2=$F so an 
entirely different pointer is 
effective. 

The advantage is flexibility. 
The same instruction can be 



format for indirect indexed 
addressing, suppose we write 
LDA ($FB),Y and that Y contains 
2. Let us also assume, as before, 
that address $FB contains $56 
(the low-byte pointer) and the 
next address contains SCO (the 
high-byte pointer). Because 2 is 
now added to the address 
pointer, it effectively becomes 
$C056*2=$C058. The assem- 
bler and hex coding, using 
arbitrary addresses, for indirect 
indexed is as follows: 



Assembler Hex coding 
LDA ($FB>,Y 81 FB 



Indirect indexed addressing is 
used much more often than 
indexed indirect. Note how 
easy it is to gel mixed up with 
the position of the assembler 
brackets. Lets put them 
together to emphasise the 
difference. 



Indexed indirect. ..LDA 
($FB,X) 

Indirect indexed.. .LDA 
<SFB),Y 



It is worth mentioning that the 
older terms were as follows: 
Indexed indirect was called 
post indexing (because the 
index was added afterwards). 
Indirect indexed was called 



pre-indexed (because the 
index was added first). 

How to enter a 
machine code program 

Up to this point, we have only 
used the instruction LDA to 
illustrate the technicalities of 
machine code and readers may 
be wondering how much 
longer they must wait before 
the rest of them are discussed. 
The trouble with machine code 
is that the various addressing 
modes are far more difficult to 
understand than differences 
between the instructions 
themselves. We have tackled 
the hardest part first. As we 
subsequently treat the other 
instructions, short program 
segments will be given to 
illustrate the behaviour of 
each. However, before we go 
any further, we must know how 
to enter a machine code 
program and afterwards, how 
to run it. We shall assume in the 
first instance that you do not 
have an assembler. Program 3.1 
is a simple way to enter a 
program into the safe area of 
memory which, you may 
remember from Part 1 of the 
series, is the 4K block starting at 
address SCOOO. 

The program, written in BA5IC, 
allows you to enter hex 
machine code bytes in the form 
of DATA statements. You 
should key in the program and 
save it on tape or disc for use 
whenever you want to load 
machine code. The hex bytes 
shown are, of course, only an 
example so, once you have 
tried it out once, there is no 
need to save lines 140 to 180. 
When you load your own 
programs, or some of the 
examples which will appear 
throughout the series, you will 
have to enter the bytes in the 
form shown in lines 140 
onwards. Once you have 
entered the bytes and the 
BASIC program run, you will be 
asked, via a screen message, 
the number of bytes used. In 
the example, there are 33 bytes. 
Once you have entered the 
number of bytes, the program 
will place tnem in memory 
starting at SCOOO. It will be up to 
you to ensure that the DATA 
bytes, which we shall refer to in 
future as a 'hex dump', are 
entered in the correct 
sequence. You will notice that 
the data bytes in the example 
are placed in groups of eight. 
This is for convenience (they 
are easy to count up if you stick 
to this number) and also 
because it is customary in 
machine code monitors to 
display the bytes in groups of 
eight. 



Programming 



10 REM POKING A HEX DUMP INTO MEMORY 

20 REM STARTING AT ADDRESS ♦COOO 

30 INPUT"HOW MANY BYTES IN HEX DUMP"; NX 

40 B=4?152 

50 FOR L=0 TO NX-1 

60 READ D* 

70 FD7.=ASC<D*>-4B 

80 SD7.=ASC ( R I BHT» ( D« , 1 ) ) -48 

90 IF FD%>9 THEN FDX=FDX-7 

100 IF SDX>9 THEN SDX=SDX-7 

110 BTX=16*FDX+SDX 

120 POKE B+L,BTX 

130 NEXT 

140 DATA A9,00,B5,FB,A9,05 f B5 f FC 
150 DATA A9,48, 20, CA, F 1 , 38, A5, FB 
160 DATA E9 f 01 , 85, FB f BO , 02 , CA f FC 
170 DATA A5, FB,DO,EC, A5,FC # DO f E8 
180 DATA 60 

Program 3.1 Poking a hex dump 
inlo memory 



LDY. On the other hand, ST A 
has as many addressing modes 
as LDA with ihe exception of 
the immediate mode. A 
moment's thought should 
convince you that it is 
impossible to have immediate 
mode with any store-type 
instruction. There is only one 
operand so you can't express 
both the data and where to put 
it in one single instruction. 

Exercises 

To conclude Part 3, here are 
some exercises which should 
help you to become familiar 
witn some of the more simple 
addressing modes. Write each 
program, enter it with the aid 
of the loader (Program 3.1), run 
it under 5YS 49152 and see if it 
behaves: 



Running a machine 
code program 

Program 3.1 is purely a loading 
program. When you run it, it 
merely loads the machine code 
into memory — it does not 
execute the machine code! To 
execute the code, you should 
now enter 



SYS 49152 



E 



This directs the computer to 
start executing the bytes, one 
after the other, starting at the 
decimal address 49152. This is, 
of course, $C0O0. If you have 
entered Program 3.1 as it 
stands, including the example 
33 bytes, you should confirm 
that the machine code, when 
run under SYS 49152, will 
completely fill the screen with 
'H' characters. In fact, 1024 of 
them are displayed but the last 
24 will naturally cause the 
screen to scroll. Don't worry at 
this stage about how the 
machine code works. If you are 
a complete newcomer, it 
would be very surprising if you 
could since several tricks have 
been used which have not yet 
been explained. You should 
notice however that the last 
byte is hex 60 which is the 
machine code version of 
RETURN from subroutine. 
Most of your programs will end 
in 60 in order to allow a smooth 
re-entry to BASIC command 
level once the machine code 
program has stopped. 

The example program 
works directly you run tt but 



some machine code programs 
require some extra data before 
they can be run. In such cases, 
it will be up to you to POKE 
such data into the correct 
memory locations before 
entering SYS 49152. It should be 
mentioned here that it is not 
mandatory to always load at the 
start of the machine code 
block. After all, there is 4K 
available so there is nothing to 
stop you loading your program 
in the middle of the block. 
However, there is no point in 
being original just for its own 
sake. If you get into the habit of 
loading at SCOOO onwards, 
there is less chance of making a 
mistake. It also allows you 
plenty of room at the end of the 
program to store any extra data 
required. 

LDX and LDY 

These load the contents of the 
chosen index register with data 
defined by the operand. 

STX and STY 

These store the contents of the 
chosen index register in the 
memory address defined by 
the operand. 

STA 

This stores the contents of the 
accumulator in memory at the 
address defined by the 
operand. 

The addressing modes 
available, together with 
assembler and hex coding are 



given in the following table 
using xx to represent a single 
operand byte: 



1. Display a character of your 
own choice in the middle of 
the screen. 

2. Display two different 
characters, side by side, in the 
middle ot the screen. 

3. Display your name across the 
bottom of the screen. 





Assembler 


Hex code 




LDX # $xx 


A2 xx 




LDX SXX 


A6 xx 


Load X 


LDX Sxxxx 


AE xx xx 




LDX $xx,Y 


B6 xx 




LDX Sxxxx.Y 


BE xx xx 




LDY # $xx 


AO xx 




LDY $xx 


A4 xx 


Load Y 


LDY Sxxxx 


AC xx xx 




LDY Sxx.X 


B4 xx 




LDY Sxxxx, X 


BC xx xx 




STX Sxx 


86 xx 


Store X 


STX Sxxxx 


8E xx xx 




STX Sxx.Y 


96 xx 




STY $xx 


84 xx 


Store Y 


STY Sxxxx 


8C xx xx 




STY $xx,X 


94 xx 




STA Sxx 


85 xx 




STA Sxxxx 


8D xx xx 




STA Sxx.X 


95 xx 


Store A 


STA Sxxxx.X 


9D xx xx 




STA $xxxx,Y 


99 xx xx 




STA Sxxxx.Y 


99 xx xx 




STA ($xx,X) 


81 xx 




STA (Sxx).Y 


91 xx 



From what has been said 
already, il should be possible to 
figure out the name of each 
addressing mode in this table 
by simply examining the 
assembler format. Notice that 
some instructions have a 
limited addressing repertoire. 
For example, you can't use 
indirect addressing with LDX or 



Warning: dont forget to count 
your bytes and make sure you 
choose the right op-codes and 
in the right sequence or, sure as 
hell, you will crash the system. 
Answers will be given in 
Part 47. 



dialog-. 

SOFT OIM YOUR POCKET 
TOUGH OIM OUR COMPETITORS 

DFM Database 

Easy-to-use, Big-System Features. Printed 
Reports, Mail Labels Option. Available for 
CBM 64 • BBC • Spectrum. £24.00 Disk or 
tape/ SPECTRUM E14.95/DFM • Labels 
£30.00. 

Home Accounts 

Bank Account. 20 Expense Headings, Name & 
Address File, Loan/Forecasts. Available for 
CBM 64 • BBC • Spectrum. £14.95 
Tape/£I6.95 Disk. 

Transact 

Book-keeping System, All Day Books, Journal, 
Nominal Ledger, VAT. Available for CBM 64 • 
BBC 'B'. £30.00 Disk or Tape. 

• All disk software has now been improved— the Commodore Disc range has 

now been written in machine code. 
• Spectrum software is now microdrive compatible. 

• All our software has been re-packaged— this means that the boxes are smaller 
and there is more descriptive copy about the program on the back of the box. 

• Buy directly from us- alternatively if you write or telephone [Address and 
Telephone number are at the bottom of this advertisement). We will send you an 

informative Dealer Pack. 

• Watch out for our QL Sinclair Software! It will be available 

sooner than you think. 

The entire software range is available from 

Micro Dealer UK 

Telephone Welwyn Garden City 
07073 28181 
and select title ranges are available from 
Websters Software. Tel. Guildford 0483 62222 

PCS Distribution. Tel. Darwen 0254 69121 1 and all Boots outlets 

Pl£ASE SEND ME FURTHER DETAILS OF NAME 

YOUR COMPLETE RANGE OF PROGRAMS FOR 

ADDRESS 

L CBM 64 □ BBC □ SPECTRUM 



Invostact 

Invoice & Statement Generator, Automatic 
Creation from Sales Product Table. Available 
for CBM 64 • BBC B'. £30.00 Disk or Tape. 

Stock-Aid 

Stock-Control System, Extensive 
On-Screen & Printed Reports. Available for 
CBM 64. £30.00 Disk or Tape. 

Electronics 

Study with Course Tutor to City & Guilds 
Standard. Available for CBM 64. £14.95 Disk or 
Tape. 



TELEPHONE 



DIALOG SOFTWARE 

293 Copperfield, Umesfarm Estate, Chigwell. Essex. Telephone: 01-501 0799 




accumulate points, as 
you wind your way 
around the screen 
hitting the boxes and 
dollar signs which 
flash in your path with 
this nail-biting game 
from 'Peter Pann\ 



ANA 
CON DA 




THE AIM OF THIS GAME IS 
to move your 'snake' (ie, a 
length of coloured circles 
preceded by an arrow) 
around the screen using the 
following keys: 



A(left) D(right) l(up) 
M(down) 

As you worm your way 
around the screen, you 
score points by hitting the 
boxes which suddenly 
appear (and, to add to your 
frustration, frequently 
disappear before you can 
reach theml: the number of 



points you score depends 
on the number {from 1 to 9) 
inside the box you pierce. 
Additionally you can score 
bonus points by hitting '$ 
signs'; these bonus points 
are then added to your 
score after you hit your next 
box. The number of bonus 
points scored depends on 
the length of vour 'snake 



which grows as the game 
progresses, but reduces 
again once the '$ sign' has 
been confronted. The 
longer your 'snake', 
the more carefully you have 
to tread as it is easy to 
entwine yourself in a maze 
of 'snake'. The game ends 
when you hit the boundary 
or turn back on vourself. 




Program Listing 



5 POKE53280,12POKE53231,12 

41 PRINTTflBC3)"M';PPESS A KEV TO PLAY) 

42 GETfl* '• IFR$»" "THEN42 
5d POKE49152,0:X«2000 

60 E=53230:E1=53231 :E2=49152: 0=54272 
70 POKEE > 0 : POKEE 1,0: PR I NTCHR* C 14) " :SD3 

75 PRINT" ":PPTNT" 



'*; : IFPEEK<E2»0THENX-100 
3 */*-fV-* " :L*PEEKCE2):FORJ«1TOL 



90 HS*«HS*+STR*<PEEK<E2+J>* :NEXT:HS*VflL<HS*> :GOSUB1000: PRINT" W3I HIDE THE MOVING 
'SNAKE' US I " ; 

120 PRINT"NG THE KEVS : ": GOSUB 1000 : PRINT" a»3<LEFT>, RIGHT), 3ha<UP>, *0 

< DOWN > IB 

130 GOSUB1000:PRINT"JSrCiN-T HIT THE BOUNDARY <0R YOURSELF), AND TRY TO HIT TH 

E"; 

140 PRINT" BOXES FOR POINTS, M" 1 GOSUB 1000 : PRINT"B I ITT I NO *f3 CREATES A BONUS WHIG 
H WILL BE" 

150 PRINT" COLLECTED AFTER /~*l SCORE. " = GOSUB 1000 = PR INT" Mil I0U HAVE AS LONG AS V 
0U LIKE T"J 

159 PR I NT "0 GET THE HIGHEST NUMBER OF POINTS ! M : GOSUB 1000 PRINT "JO 00D LUCK ! " : G 
OSUB1006 

171 PR INT "IIS S HIT ANY KEV TO START " : GOSUB 1000 : FORJ-0TO24 • POKEQ+J, 0 : NEXT : DI 

MP<800)/D(3) 

175 DIMV<8>,H<8>,T<8>#RC8>i|C". 1 ■ M2-300 ■ B0=1 • P0KE323. 3 
1 80 GETZJ : I FZ*= SOTO 1 30 

1 35 GOSUB800 : D< 6 ) =22 D< 1 > =60 : D < 2 > =62 : D < 3 > =30 ■ T9= 1 024 : T6-3599 ■ G0SUB228 • GOTO230 
220 P0KEQ+5 > 36 : POKEQ+6 , 36 : P0KEQ+4 , 1 29 ; RETURN 

230 PRINTCHR*<142>"3BkSC0RE: TO KBONUS X 1 kHI :K"HS"SI" :FORJ=1064TO1103 = 

POKE J, 67 

240 P0KEQ+1 > J- 1000 : PGKEJ+Q, 7 ! NEXT • FORJ=1984TO2023 POKE J, 67 : P0KEQ+1 , J- 1900 ■ P0KEJ+ 
G,7:NEXT:L=40 

260 F0RJ=1 104TO1944STEP4O : POKE J, 66 ■ POKEJ+Q, 7 : POKEJ+39, 66 : P0KEJ+39+Q, 7 ■ P0KEQ+1 , IN 
TCJ/10) =NEXT 

265 POKE 1 064 , 35 ; POKE 1103/73': POKE 1 934 - 74 : P0KE2023 , 75 : V=5 : H=5 : V 1 =0 ■ H 1 = 1 : P2= 1 0 : D 1 =2 
230 TI$="000000" :T=TI 

290 SSaTI:M^»INT<<10-3)*RND<l>>+3:lFPEEK<828>«WXTHENW?i=WX+l 
292 POKEG+24, 15 
300 GET2$ IF2$=""GOTO330 
382 IFZ$="M"THENZ=0 



E 




Program Listing 




388 IFZ$="ITTHENZ=2 

369 G0SUB220 : POKEG+24 , 1 5 

320 Dl=Z D=2-1.5:Vl = IHTr;R£S(D>:>#SGN<D>:Hl=SGH<:D>-Vl 
330 V=V-V1 :H=H+H1 -P=T9+V*L+H 

356 P9»PEEK < P > : FOR I =2 1 T03STEP-7 • POKEQ+2 , I ■ NEXT : POKEQ+ 1 , UK 
360 R6»R?:R7*R7+1 : IFR7>P2THENR7=0 

370 P1=PCR7> P<R7>=R: IFP1O0THENPOKEP1,32 

389 POKEP # D< Dl > : POKEP+Q , 3 P 1 =P < R6 > : I FP 1 O0THENPOKEP 1,81: PQKEP 1 +Q , UV. 

382 I FT I >H 1 +M2 ANDPEEK < W ) =36THENPQKEW , 32 : W=0 

383 LFPEEK<W)O36THENW*0 

384 M»0: IFP9O36THEN390 

385 IFPEEK'-PCM>)=31THENMM=MM+1 

386 POKEPCM>+Q>WX:POKEP<M>j 19 : W=W+1 : PRINT "S!" TAB < 26 > "©3" MM "II ■ " = IFM>208THEMM 

387 P0KEG+1,UM=M+1 : IFM=1 THENGOSUB80O : GO3UB220 : POKEQ+ 0 

388 IFP<M»0THEN385 

389 W2«W2+20 ; W*0 : P0KE828 . MX : SOTO400 
396 IFP9O32GOTO340 

400 IFRND<1»KOOTO290 

4 1 0 VX*RND < 1 > *L/ 1 0 : P3=S6+V2 : VS»=V < V/i ) : IFVSO0GQT059 1 
470 V2=INT<RNIKl>if:20>+3-H2=IHT<RNDa>*<;L-4>>+2 

480 F0RV3=V2-1T0V2+1 P3=V3*L+T9:FuRH3=H2-lT0H2+l : IFPEEK<P3+H3>O32QQTO4?0 
490 NEXTH3 , V3 : V < > =V2 - H < VX > =H2 

500 ZZ=INT<RNIK.5>*7+9> : F0RV3=V2-1 T0V2+1 : P3=V3*L+T9 : F0RH3=H2-1T0H2+1 

510 POKEG+4, 17 :F0RI=1T025STEP2= POKEQ+l* I = NEXT: POKEG+4* 129 
520 P0KEP3+H3, P9 : P0KEP3+H3+Q, 22 

530 NEXTH3/V3 - T=9*RND< 1 > : P8=V2*L+H2+T9 : P0KEP8, 49+T : T<VZ>=T = R<V,"0=P3 : GOT 0290 
540 V2-P9-86 : I F V":<GTHENGGSUB800 : GOTO600 
550 P8»R<VK) T=J<: V 'X> P2=P2+7T*=TI$ 

560 T=T-1 :S=S+1*B0P0KEP8, T+49 FORI = 1TO10STEP3 : POKEQ+l , 1 : NEXT ; FOR 1 = 1 ©TO 1 STEP-2 : P 
OKEQ+1, I : NEXT 

564 I FS> 1 499THENB0= 1 0 : G0T0570 

565 I FS>999THENB0=5 : GGTO570 

566 IFS>299THENB0=3 : GOTO570 

570 IFU>0THEN578 

571 W=INT(RND<1>*<2023-1064>+1064> : IFPEEK<W)»32THENP0KEM. 36 : GOSUB9O0 : W1=TI 
578 S=S+MM*BO:PRINT"S»»MtrS;TfiB<20>"H X"BO M ll " : MM=0 

580 POKEQ+4, 33 : FORJ=100TO65STEP-2 : POKEQ+l, J ■ NEXT : POKEQ+4, 129 IFT>=0GOTO56O 

590 P2-P2+7 :TI$*T* : V9-V<VK> 

59 1 FOR V3= V9- 1 T0V9+ 1 : P3=V3*L+T9 : H9=H < V'/. > +P3 : F0RH3=H9- 1 T0H9+ 1 
594 P0KEH3 , 32 : NEXTH3 , V3 : V < V5i ) =0 : POKER < VX >,32: G0T0298 

60O POKEQ+4, 17 : FORI=254TO0STEP-2 : POKEQ+l* I : POKEE, I : POKEE 1,1 + 1 ; NEXT : POKEE 1.0 POKE 
E,6 

620 IFS>HSTHENGOSUB660 

625 pokeq+24 o : pr i nt " ^msmmmmmmmmmm»nnnm " 

626 PRINT R»»»»I3 ANOTHER GAME? / SIIIIU ; X=100 

630 GETZ* : IFZ$=" "THENPRINT" afVM UK GOSUEIOOO 
635 I FZt= " " THENPR I NT " El Willi", : GOSUBIOOO : G0T0630 
640 IFZ*="V"THENPRINT"n M RUN66 

650 IFZ*="N"THENENB 

651 GOTO630 

660 S$=3TR$(S> =L=LEN<S*> = P0KEE2, L = F0RJ=1T0L : P0KEE2+J, VAL<M1D#<S*, J, 1>> : NEXT ■ RETU 
RN 

800 POKEQ+l , 230 : POKEQ+5, 9 : POKEQ+l 5, 30 : POKEQ+24, 15 ■ POKEQ+4, 21 : FORJ J=255TO1STEP-10 
: POKEQ+l, J J 

305 POKEE . J J '• NEXT ; IFM= 1 THENPOKEE ; 0 : RETURN 

810 FORJJ=16TO0STEP-2 POKEQ+24, J J ■ FORA=1TO100STEP1 1 i POKEG+4, A POKEE , J J i NEXT A.. J J : 
POKEQ+24, 15 = RETURN 

900 POKEQ+ 1 , 1 00 : POKEQ+5 , 9 = POKEQ+ 1 5 , 30 : POKEQ+4 , 21 = FOR JJ= 1 5TO0STEP-3 ■ POKEW+Q > J J ■ PO 
KEE,JJ 

910 F0RA=15T01STEP-3 ■ POKEQ+24, A • POKEE, A : POKEE, A : NEXTA, J J : POKEQ+24 , 15 POKEE, O : GOS 
UB220 -POKEM+Q, 1 RETURN 

1000 POKEQ i 240 : POKEQ+l , 33 : POKEQ+5, 8 : POKEQ+22, 104 : POKEQ+23, 1 : POKEQ+24 . 79 : POKEQ+4 ■ 
129 -FORJ- 1TO30 

1010 NEXT : POKEQ+4, 128 : F0RJ=1T0X : NEXT • RETURN 



THE 64 SOFTWARE CENTRE 
1 Princeton Street London WC1 

01-4300954 



Business accunts 




Sales Ledger (Anagram) d 


75.00 


Purchase Ledger (Anagram) d 


75.00 


Sales Ledger (Ramtop) t 


14.DU 


rurcnase Leager irtamiop) i 


id 'in 

1 1.0U 


Accounts package (namtopf o,i 


113.UU 


i^asnDOOK (Microsimpiexj a 


i79 in 

1 / £.3U 


uasnDOOK lueminif a 


fid 

04.93 


oasnuooK (ueminij i 




rinai Accounts (oemmif a 


R4 


Final Accounts (Gemini) t 


59.95 


Invpntnrv 64 iMMSl d 


29 95 


Stock Control (Gemini) d 


24.95 






Onmhinprt Park Nn 1 (fipmini) d 


99 9S 


rtome applications 




buageteer (Aoamsoit) i 


0 DC 

0.90 


unecKDOOk Manager lAaamsoiij a 


HA QC 


nome Accounts (oeminij a 




Home Accounts (Gemini) t 


19.95 




14 95 


Hnmp Accounts (Fipldma^tpr) d 


29 95 


Database systems 




Magpie 64 (Audiogenic) d 


nrt nc 
99.95 


Mailpro 64 (Pro-Line) d 


79.35 


Oracle 64 (B.I.) d 


' i c nn 
lib. 00 


Practitiie 64 (MMb) d 




Simnlv File 64 (Simole) d 


60.00 


Suoerbase 64 (Precision) d 


99.95 


Figaro 64 (Saxon) d 


86.25 


Database (Gemini) d 


24.95 


Spreadsheets 




Busicalc (Supersoft) d,t 


17.95 


Busicalc II (Supersoft) d 


81.65 


Calcresult Adv. (Handic) d 


99.00 


Easy Calcresult (Handic) d 


49.95 


Multiplan 64 (Hesware) d 


99.95 


Practicalc 64 (MMS) d 


44.50 


Practicalc 64 (MMS) t 


39.95 


Programmers' Aids & Utilities 




BC Basic (Kuma) c 


57.50 



d = d«sk t = tape c = cartridge 

ALL IN STOCK NOW — Callers welcome 

(10am— 6pm Incl Saturdays) 

Mail Order: Cheque or PO — add £3 for items over £30. others free 
Credit cards (Access/Visa): phone or write. Immediate despatch 



The 64 Software Centre, 
1 Princeton Street, London WC1 

Please supply the following items: 



m 
•it 

@£ 



1 Qty 

2 Qty 

3 Qty 

4 Qty 

TOTAL £ 

POSTAGE £ 

TOTAL £ 

Name Address 

Visa/Access Card No 



Date Signature 



Cadpack (Adamsoft) d 35.00 

Chartpak 64 (Adamsoft) d 24.95 

Chipmon (Mr Chip) t 12.50 

Forth 64 (Audiogenic) c 29.95 

Forth 64 Advanced (Hesware) c 50.00 

Graphics Designer (Adamsoft) d 19.95 

Graphix 64 (Supersoft) t 11.50 

Logo (CBM) d 57.50 

Master 64 (Supersoft) d 71.30 

Mikro Assembler (Supersoft) c 59.80 

Hesmon Monitor (HesWare) c 34.95 

Pilot (CBM) d 75.00 

Printlink 64 (Supersoft) t 32.20 

Ouickchart 64 (Adamsoft) t 6.95 

Screen Graphics (Adamsoft) d 14.95 

Simons Basic (CBM) c 47.50 

Sprite Aid (Adamsoft) t 6.95 

Stat 64 (Handic) c 29.95 

Superdisk Utility (Adamsoft) d 12.50 

Synthy 64 (Adamsoft) d 14.95 

The Tool (Audiogenic) c 49.95 

Turtle Graphics II (HesWare) C 50.00 

Ultrabasic 64 (Adamsoft) d 24.95 

Ultysynth (Quicksilva) t 14.95 

Victree 64 (Supersoft) c 56.35 

64 Doctor (MMS) d 19.95 

Jetpack Compiler d 39.95 

Jetpack Compiler t 14.95 

Master Composer (Access) d 44.95 

Word Processors 

Heswriter (Hesware) c 
Paperclip 64 (B.I.) 
Simply Write 64 (Simple) d 
Simply Write 64 (Simple) t 
Vizawrite 64 (Viza) d 
Vizaspell 64 (VizaJ d 
Educational & Languages 
Essential Italian (Dell) d 
Essential Italian (Dell) t 
Besieged (Sulis) t 
Wordpower (Sulis) t 
Time Traveller (Sulis) t 
Just a Mot (Sulis) t 

various subjects: Callisto, Collins, Commodore etc. 
War simulations 
Battle for Normandy (SS) d 
Knights of the Desert (SS) d 
Eagles (SS) d 
Combat Leader (SS) d 
Tigers in the Snow (SS) d 
Geopolitique (SS) d 
Operation Whirlwind (Broderbund) d 

Flight simulators 

Flight Path 737 (Anirog) t 
Flight Simulator (IFR) d,t 
Flight Simulator II (Sublogic) d 
Solo Flight (US Gold) d.t 
Heathrow (HC) t 

Business Simulations 

Commodities (Blue Chip) d 
Stock Exchange (Blue Chip) d 
Real Estate (Blue Chip) d 
Games 

A large assortment in disk, cassette and cartridge. 



34.95 
98.90 
40.00 
35.00 
79.95 
59.95 

16.95 
14.95 
9.95 
9.95 
9.95 
9.95 



34.95 
34.95 
34.95 
29.95 
34.95 
39.95 
34.95 

7.95 
24.50 
47.50 
14.95 

7.95 

50.00 
50.00 
50.00 




Programming 



In the third part of 
this series, Bryn 
Phillips invites you to 
irritate the neighbours 
by adding sound to 
your VIC gam* 



THIS IS THE THIRD OF A FIVE 
part series of BASIC Games 
Programming for the VIC20. 
The series is primarily intended 
for newcomers to games 
programming, but there might 
well be a few useful tips lor 
seasoned programmers. 

So far we've looked at two 
of the main elements of Games 
Programming on the VIC 20 — 
screen layout and movement. 
Even without sound you can 
write some good games. In fact 
some games are better with the 
minimum of sound — 
especially thinking games — it 
can be a distraction. However 
for most action games 
imaginative use of sound can 
make all the difference. As a 
VIC owner you have a big 
advantage in this area, because 
the sound comes through the 
T.V. speaker, giving youlots of 
volume. You're not limited to 
the odd pathetic bleep or click, 
either — you have an amazing 
variety of sound effecs to draw 
on. 

Tuning into the VIC 

The VIC has five sound 
registers, four for tone, and 
one for volume. As with most 
things on the VIC you have to 
POKE values into these 
registers, which have the 
following memory locations: 





Memory 


Range 




Location 




Volume 


36878 


0-15 


Tone (low) 


.16874 


128-255 


Tone (med) 


36875 


128-255 


lone (highi 


36676 


128-255 


Tone (noiie) 


36877 


128-255 



In order to use sound 
effectively in Games Program- 
ming it must be carefully 
planned, and not just slotted in 
somewhere at the end of the 
program as an afterthought. 
There are two ways of using 
sound. It can be put in in 
discreet packages, or carefully 
integrated into the program 
structure. 

One of the most valuable 
uses of sound in a program is to 
add interest or excitement 
either when there is no action, 
for example the introduction. 



VIC GAMES 

PROGRAMMING 



or where there is a distinct 
pause in the action. This would 
occur when something 
spectacular happens, for 
example an explosion, a ship 
sinking, or a bonus score 
message. Here you can usually 
put the sound in as a discreet 
package in a subroutine. It 
makes for neat programming, 
and allows you to come up with 
some sophisticated effects. 
Sometimes you might want to 
play a few bars of a tune. This is 
easily done by going to a sub- 
routine along the lines shown 
in fig(i). 



10 POKE V.15 

20 FORI=1TO10 

30 POKES,N(l) 

40 FOR J=1 TO 200: NEXT J 

50 NEXTI 

60 POKEV,0:POKES,0 



fig 0) 

Where V is the volume register, 
S is a sound register, and the 
array N(l) contains the notes of 
the lune, which you define 
earlier "in the program. This 
sounds a bit flat though, and 
you can make it more interest- 
ing by enveloping the sound to 
give different effects. The 
simplest is the piano effect, and 
this is done by decaying the 
volume as outlined in fig (ii). 



10 FORI=1TO10 

20 FORVL=15TO0STEP-1 

30 POKES,N(l):POKEV,VL 

40 NEXTVL 

50 NEXTI 

60 POKES.O 



f'g ('■) 

Hitting the right note 

All you need to do now is to 
find some notes to give you a 
tune. Rather than constantly 
refer to the table of note values 
in the User's Manual, it's far 
easier to use a utility program 
to help you compose the tunes. 
The utility program, COM- 
POSER (Listing 1), allows you to 
compose short tunes (20 notes 
max), and provides you with 
the values to include in the data 
statements in your program. 




It's very easy to use; you just 
use the bottom row of keys on 
the keyboard as the white 
notes, and the second row of 
keys as the black notes. Any 
other keys will give you asingle 
note pause. You can easily 
change the tune using delete, 
and play it back at any time 
using f7. This program is 
deliberately simple. Without 
loo much effort you could 
convert your VIC into a neat 
little sound synthesiser, with 
chords, drums, and melody 
lines. But that would be getting 
away from Games Program- 
ming — it would use up 
valuable memory, and we need 
that for other things. 

Effecting sound 

Now let's get on to the sound 
effects. Probably one of the 
first things you did when you 
acquired your VIC 20 was to 
type in some of the sound 
effects at the back of the 
manual. Some of them are very 
good, and they crop up from 
time to time in programs here 
and there. It's tempting to 
leave it at that — as I said some 
of them are very good. Unfor- 
tunately they're not original — 
they were thought up by 
someone else. If you're writing 
your own programs you want 
your own sound effects which 
exactly fit your theme; whether 
it's ducks quacking, tyres 
screeching, or aliens scream- 



ing, it's up to you. 

Most simple sound effects 
are generated by nested loops. 
Fig (tii) shows the two simplest 
loops. 



10 FOR J ■ 1 TO RP 
20FORNT=N1 TO N2 STEP SN 
30 FOR V=V1 TO V2STEPSV 
40 POKE VL.V 
50 POKE 5.NT 
60 NEXTV 

70 FOR I ■ 1 TO 100'PS:NEXT I 
80 NEXT NT 
90 NEXT J 

100 POKE V.0:POKE 5,0 

LOOP 1 

10 FOR 1 = 1 TO RP 

20 FOR V = VI TO V2 STEP SV 

30 FOR NT =N1 TO N2 STEP SN 

40 POKE VL.V 

50 POKE S.NT 

60 NEXT NT 

70 FOR I = 1 TO 100-PS:NEXT I 
80 NEXT V 
90 NEXT J 

100 POKEVL,0:POKE S,0 



LOOP 2 



fig (iii) 

In Loop 1 the volume loop is 
nested within the tone loop, 
and in Loop 2 (he tone loop is 
nested within the volume 
loop. Loop 1 can be used to 
give some pleasant musical 
effects, and Loop 2 really 
comes into its own for those 
wierd alien sound effects we 



r 



have all learned to love (or 
hatef). If you type in the utility 
program "MANIAC SYNTHE- 
SISER" (Listing 2), you can play 
with these loops to your heart's 
content, and when you get an 
effect you like just copy down 
the values for inclusion into the 
loops given in fig (iii). I've made 
up a table of some values you 
might like to try when you start 
off, but whether you agree with 
my descriptions of these 
sounds is another matter! 



loops if you want to 
experiment further. 

Integrating sound 

Earlier in this article I men- 
tioned Integrated Sound. The 
only problem of going to a 
subroutine each time you want 
to hear something is that it 
slows down the action. Even 
worse, il can make the whole 
thing jerky if the sound only 



hold a note. You have to first 
write your program, then 
sketch out your sound efect 
sub-program and merge the 
two. The speed of the action 
should not change when the 
sound effect occurs — you wif" 
just get a slight reduction in the 
overall speed. The more 
complex the effect the greater 
the reduction. The answer is 
not to go overboard with the 
integrated sound effects — 
keep them simple. You can 




DESCRIPTION 


RG 


N1 


N2 


SN 


VI 


V2 


SV 


PS 


RP 


LOOP 


Aliens coming 


3 


150 


200 


5 


5 


15 


3 


0 


5 


2 


Cricket 


3 


230 


232 


1 


0 


15 


5 


0 


10 


2 


Machinery 


4 


230 


240 


1 


15 


5 


-3 


0 


3 


1 


Knock on wood 


4 


200 


160 


-10 


15 


5 


-5 


0 


3 


2 


Knock on metal 


2 


200 


160 


-10 


15 


5 


-5 


0 


3 


2 


Piano 


2 


200 


130 


- 5 


15 


5 


-1 


0 


1 


1 


Phaser firing 


2 


200 


130 


- 5 


15 


5 


-1 


0 


1 


2 


Something (?!) 






















coming 


1 


250 


130 


- 5 


15 


5 


-5 


0 


10 


2 



When you type in the program 
it's important to make sure you 
get the screen formatting right, 
But otherwise there should be 
no problems. Loops 1 and 2 
have been included in this 
program as subroutines, and if 
you follow the listing through 
you will see that it's quite easy 
to add your own customised 



occurs occasionally. In order to 
avoid this you have to integrate 
your sound effect into the 
structure of the program. This 
can take some thinking about, 
and will vary from program to 
program. The trick is to find 
natural delays in your program 
structure, and never use 
FOR/NEXT loops simply to 



save the sound extravaganza 
for the triumphs and disasters, 
as you savour the moment of 
victory, of flounder in defeat. 

The difference between 
Integrated Sound and the use 
of subroutines is shown in 
Listing 3 and Listing 4. Back to 
the bouncing ball featured in 
the last article. In both 



programs a ball bounces 
around the screen, and bleeps 
each time it hits the edge. In 
BOUNCE A the program goes 
to a subroutine to generate the 
sound, and in BOUNCE B the 
sound is integrated. It's a very 
simple example, but if you 
RUN the two programs you 
should notice the difference. 

So far we've been talking 
about aliens, frogs, rockets etc, 
and all we've got is the VIC's 
standard graphic set. If you've 
got a lot of imagination you are 
probably quite nappy with that 
— but it does take a lot. A 
square falling from a rectangle 
can be interpreted as a bomb 
falling from a plane, but a bit of 
realism would bring it all to life. 
That's what I'll be covering in 
the next article in this series. It's 
all about User Defined 
Graphics (UDG's) — they make 
all tne difference. 



Listing 1 




E 



10 
20 
36 
4© 
50 
60 
70 
«0 
30 
100 
110 
120 
130 
140 
190 
160 
170 
l'?0 
190 
2O0 
210 
220 
23© 
240 
290 
260 
270 
28© 
290 
300 
310 
320 
330 
340 
3*50 
360 
370 
380 
330 
40O 
410 



REM COMPOSER 



REM BRVN PHILLIPS 
REM 1984 

REM IMIT KEYBOARD 
t 

D1ML-:13> sDIMH< 18> jDIMH*' 18> 
0IMPNK22;- iDIHNT<2?> 
V=368 78 :S= 36876 
FOPJ= 1 TO 17 iPEftDL' 1 > I NEXT 
FORJ«!T017iPE*OH*T> (NEXT 
FOR J= 1 TO 1 7 sREADN* * J ■ iHEHT 
i 

i REM SCREEN DISPLfiV 
: 

PRINT"a" 
GOSUB660 
J=0 
: 

REM COMPOSE 
GET** 

IF***." "THEN240 
[Ffl*a n VTHENRUN 

I PflSC " Ht « -2GTHENG0SUB44O : GOT0240 
I FAf = " If THEHG0SUB54 0 : G0T0240 
J=J*-1 :IFJ:>2OTHErU-2OlGOTO240 
NT'. JJ-0iPM»< J J-"PS ■ 
FOR I = 1 TO 1 7 

1FL- 1 '"flSC' fi* >THENMT< Ji*U< I ) jPN** J»«N*CX) 
NEXT I 

1 FHT ' J>=OTHEN330 
FDR VL=15T0OSTEP-l 
POKES. HT- J i iPOKEV.VL 
NEMTVL 

POKE V.OiPOKES.O 
PRINT TfiCv 1 IPHUI I ' rTAB<4 >HT< J> 
OOTO240 



420 
430 
440 
430 
460 
470 
480 
430 

300 

510 
520 
330 
340 

350 
560 
570 
580 
3'30 

6O0 

610 
620 
630 
640 
650 
660 
670 
680 
630 
TOO 
710 
720 
738 
740 
730 
760 
770 
46, 
780 
131 
730 



REM DELETE NOTE 
i 

IFJ=0rHEHPETURII 
J.J-1 

PR1MT"3" sGOSUB660:IFJ-0THEII RETURN 
FORK- 1 TO J 

PRINTTAB- 1 )PH«'.K > rTAB« 4 <HT<k > 

NEWT 

RETURN 

REM PLHV TUNE 

F0RK-1T0J 

1 FNT « K > =OTHEH530 

FOR VL-15TO0STEP-1 

POKES,NT<K> iPOKEV,VL 

HEXTVL 

F0RTT=1 TO200 iNEXTTT 
NEXT* 

POKE V.0IPOKES.O 
RETURN 



REM SCREEN DISPLflV 
PP 1 NT " »I pIhE»»»»»M 



AttUW COMPOSER " 
E LONER" 
PPIHI"imiM»IMr-'- AND " 
FF IUT"I»MMMRMJDELETE TO" 
PRINT"HM»MMMMCOMr 0SE. 
PPIHT"»1MMM1MM»F7 TO PLAY" 

IMT II MMIMm FI RE-RUMS'* 
RETURN 

REM DATA 
i 

DATA 30 ,83, 83, 68, 67, 86. 71 ,66,72,78,74,77,44,76, 
58,47 

DATA135,143,147, 131 ,133,163,167,175.173.183,187 
, 135,133,201 ,203.207 
DATAC ,C# ,D ,D* ,E ,F -F» ,G ,G* -A -AH .B .C 
,D ,D# ."E " 



Programming 



Listing 2 




10 

20 
30 
40 

30 

60 
70 

80 
30 
100 
110 
120 
130 
132 
134 
136 
140 

ise 

160 
170 
172 
174 
176 
130 
190 
200 
210 
220 
230 
240 
250 
260 
270 
230 
230 
300 
310 
320 
330 
332 
334 
336 
340 
330 
360 



REM MANIAC SYNTHESISER 



REM BRVN PHILLIPS 
REM 1984 

F0RI-lT09:REftDPS' I » I NEXT 
F OR I = 1 TOT i PEAOOP < I > : NEXT 
FOR 1 = 1 T09 : READLL < I ' I NEXT 
FORI = 1 T09 : REAOUL < I > iNEXT 
FOR I « 1 T04 : READS< I > i NEXT 
VL=36873 
SN«3(SV»3 
: 

PEM DEFINE STRINGS 

FX*-" ^M^IIi^^l^'I^I^-I^L^l'P »LS t 1 FAR OPTION--. 

i i i ,, 4(W(i»iaai!M'iLi , i'a*ietti!»»ia ' ■ i cursor keys " 

REM SCREEN DISPLAY 
P0KE36879.28 

PR 1 NT " 3I1*WN I AC SVNTHES I SER " 
PRINT sMiaiB REGISTER »?G| 3" 
PPINT'-JUUSCS 1ST NOTE 1H1B150" 
PRINT"!*t*39 END NOTE UH2« 
PRINT"Mia4B STEP NOTE tfSNl 
PPIHT"ttBB(5B 1ST VOL HVT 
PRINT"UU*S« END VOL |f-/2« 
PRINT "|fcia7B STEP VOL IK-Vl 
PPINT"lMl^B PAUSE iFSl 0 

PRINT"UUS9B HO. REPEAT iFPB 5" 
PR I MT " sfcMliU 

1-8 CHANGE VALUE " 
FS LOOP 1 
F7 LOOP 2 



00' 



13' 

3* 



PRINT tftL&i 
PRINT "|*iai 
PRINT' 
PRINT' 
s 

REM SELECT 



OPTION 



28:J=VAL<A*J IGOSUB6201 



GET A* 

1FA*-" "G0T0340 

IFV AL < A* > >0ANDVAL Cft* > < 1 OTHENCL- 
PRINTCHR*<:28>Fl»»CK*iG OTO4O0 
370 IFA*="||"THENGOSUB?40:REMF7 
330 | F A » a " !■" THENOOSUBegQ sREMF5 
390 GOTO340 
392 I 

394 REM CHANGE VALUE 

396 i 

400 GET A* 

410 CL-28:GOSUB620 

42© IFA*="ft"THENCL=144 :00SUB620 :PRINTCHR*<2S.»CC» ;CF* :G0T0348 

430 IFA*="||"THENOP< J>-0P<J> + 1 : IFOPC J.OUL' J :-THENOP< J) =UL< J> 

440 1FAJ-"U"THEN0P« I>=0P< J>-1 :IFOPi J !> <LL OJt J THENOP <J f *LL < J > 

450 0P«»STR»(OP< > 

460 LG=LEN<0P»> 

470 0P*-MIO*' OPt -2.LG-1 "> 

430 IFLG=3THEN0P*"" "+0P» 

490 IFL0-2THEN0P*-" "fOP* 

■50© PP1NT"3" 

510 FORI = 1 TOPS CJ^ 

520 PRINT 



10 REM BOUNCE ft 
20 i 

30 V-36878tS-3*873 
40 P1-8164.P2-39884 
50 CM*81 iCL-2 

60 x-ieiv*oixi»i0ivi-v 

70 DX-1 iOV-1 

80 PRINT"3" 

90 X»X*OXlV-V*DV 

1O0 IFXC10PX>20TMEHDX-DX*-1 jOOSUBIT* 

110 IFV<10RV>21TMENDV-0V*-1 IGOSU6I70 

12© POKEPl+Xl-22*Yl,32 

1» P0KEP1+X-22*Y,CH 

140 POKEP2*X-22*V,CL 

ISO Xl-XtVl-V 

160 COTO90 

170 P0KEV.13 

180 POKES. 210 

19© FO*I-lT030iNEXT 



Listing 3 



200 PO*:EV,t 
210 RETURN 



lPOKES.0 



530 

540 

530 

560 

370 

33© 

590 

600 

610 

612 

614 

616 

620 

63© 

640 

630 

660 

670 

672 

674 

676 

630 

690 

700 

710 

720 

730 

732 

734 

736 

740 

750 

760 

770 

730 

79© 

800 

310 

320 

330 

840 

350 

332 

834 

856 

860 

870 



918 
920 
930 
FMO 

960 

970 

972 

974 

976 

980 
990 
1000 
1010 

102O 



NEXT I 

PRINTCHP*-;i44>TAB<16>?0P« 
SV-SGN COP < 6 > -OP < S > 1 *0P f TO 
SN-SGN< OP < 3 > -OP C2>5 *0P < 4 1 

IFSV<0THENK>7iSGt="-" : GOSUB680 
IFSV: 0THENK'=7 lSG*a u " :GOSUB680 
IF3N';0THENK=4 :SG« - " - " i G0SUB680 
IF? N>0THENK=4 lSO»«" " :G03UB680 
G0T0400 

: 

REM PRINT OPT SUB 

PRINT'S" 
F0PI=1T0PS<J> 
PRINT 
NEXT I 

PRINTCHP*' i.L>"Wia"MI0«'STR*<-I>.2,l • 
RETURN 

REM PRINT SIGH SUB 

PRINT "fl" 
FORI=1TOPS<K> 
PRINT 
NEXT I 

PRINTTAB<16>SG* 
RETURN 

: 

REM LOOP 2 

F0RN=1T00P<9> 

F0PV-0P<5>T00P<6>STEPSV 

F0RNT=0P<2>T00P<3>STEPSH 

POKEVL.V 

P0KES<;0P<1.>>.NT 

NEXTNT 

FOR I = 1 TOOP < 8 > » 1 OO J NEXT I 
NEXTV 

POKES<OP<1>>,0 
POKEVL.0 
NEXTN 
RETURN 
: 

REM LOOP 1 

F0RN-1T00P<9> 
FORNT-OP< 2 >TOOP < 3> STEPSN 
FORV=OP< 5 ) TOOP < 6> STEPSV 
POKEVL.V 
P0KES<0P<1>>.NT 
NEXTV 

FORI-1TO10O*OP<8- iNEXTI 
NEXTNT 

POKES(OP<1>),0 
POKEVL,0 
NEXTN 
RETURN 



REM DATA 

1 

DATA 1,3,4,3,7,8,9.11,12 
DAT A3 , 1 50 , 2O0 ,3.5,15.3,0.3 
i DATA1, 128, 123, 1.0, 0,1. 0.1 
DATA4,233,233,20, 15. 15. 15, 10,25 
DATA36874 , 36875 , 36376 , 36877 



10 

20 



PEM BOUNCE B 



Listing 4 



30 V=36873iS»36375 

40 Pl=8.l64iP2=338S4 

50 CHnSl :CL«2 

60 X=10iV-0!Xl=10:Vl»V 

65 P0KES.210 

70 DX=1 iDV-1 

30 PPINT"3" 

90 X=X.OX!Y=V+DV:POKEV,0 
1O0 IFX<10PX>20THENDX=DX*-1 :P0KEV.13 
110 IFV<10RV>21THENDV=DV*-1 :P0KEV,l3 
120 P0KEP1+X1-22*V1,32 
130 P0KEP1.X-22*V,CH 
140 P0KEP2+X-22*V,CL 
150 Xl*X*Vi«V 
160 GOTO 90 




Mike Roberts and 
Simon Rockman 
investigate the smaller 
of Commodore's new 
offspring, the 
Commodore 1i 



IE 



THE COMMODORE 16 IS 

Packaged in the same type of 
ox that has clothed 
Commodore 64s and VICs for 
the past few years. The 
machine's colour scheme is 
rather different to the CBM 64; 
it looks like a negative — 
gunmetal box and a grey 
keyboard. 

The ports at the back of the 
box show a departure from the 
64/VIC stable with the 
omission of the R5232C 
interface and the parallel user 
port. 

Most remaining features 
have been changed: the 
cartridge/expansion port has 
been reduced in size to stop 
people shoving CBM64 
cartridges into a C16. 
Commodore say that no RAM 
memory expansion will fit into 
this slot, only cartridges, 
although 'Memory Expansion' 
is written above it. Com- 
modore's answer is "We 
know"; apparently the 
moulding was made by a 
Chinaman or something. It is 
unknown whether the highly 
advanced structure of the CBM 
64's slot is duplicated with the 
facility for second processors 
etc. 

The two D9 connectors of 
the CBM 64 have been 
dispensed with and replaced 
with mini DIN connectors: this 
means you can only use 
Commodore's joysticks but 
even their new 'hi-tec' style 
ones are not the best on the 
market. This is foolish since it is 
so easy to make an adaptor (or 
use with any joystick. No doubt 
there will be a roaring trade in 
adaptors. There is also one 
other problem with joysticks: 
on the box they are labelled 
PORT 0' and 'PORT V: BASIC 
thinks they are 'JOY (1)' and 
'JOY (2)' — the mysterious 
Chinaman perhaps? 

The cassette recorder 
socket is also a mini DIN 
connector; this is because the 
C16 cassette deck is different to 
the old tape decks. This doesn 't 
really matter with the C16 as a 
cassette deck gets supplied 
with the computer. 





COMMODORE'S 

LATEST 

NUMBER 



Thankfully. Commodore 
have left the Serial BUS and the 
audio/video connector alone. 
Since all Commodore's existing 
peripherals which use these 
ports will work straight off, 
there are already printers and 
disc drives available for the 
machine: this is a welcome 
change from the usual state of 
affairs where the user has to 
wait up to two years for any 
peripherals at alt. 

The keyboard is up to 
Commodore's usual excellent 
standards and probably 
represents most of the 
component cost of the 
machine (it did on the CBM64 
and VIC). Changes made from 
the VIC/64 keyboard include 
four separate cursor keys, an 
escape key, and various 
modifications to the layout of 
the keys to facilitate these 
changes. The cursor keys are 
now on the top right of the 
keyboard. This is confusing toa 
user who is experienced with 
the Commodore keyboard of 
old, but it is extremely logical 
and easy to get used to for the 
first time user. 

Inside the C16 

The internal hardware reveals 
some surprises. Most of the 
inside is driven via one big 
chip: called either the 7501 or 
the TED chip depending on 
your inclination, it combines a 
6510 processor at 2MHz with a 
sound generator, timers, 
input/output, memory 
banking, and graphics 
generation. In all it has 19 
registers to control things fin 
order of graphics ability: the 



Spectrum has 1, MSX has 6, the 
BBC has 17, the Commodore 64 
has 47). 

Sound ability is as good as 
any other computer although it 
only has two channels — either 
two sound channels or one 
sound and one noise (for 
special effects). Nearly all the 
advanced sound features of the 
SID chip have been left out like 
ADSR, filtering, and mod- 
ulation. 

Graphics ability is superb. It 
is natural that this and the Plus 4 
will be compared with the 
Commodore 64 as there are a 
lot of similarities in spec; the 
graphics are different and 
there are currently two schools 
of thought as to which is better, 
the CBM64 or the C16 

No sprites. . . 

The big difference lies with 
sprites. These wonderful things 
that make games programming 
easy have been chopped from 
the C16. In their place is a 
software simulation of them 
from BASIC where you can 
extract an area of the screen 
and store it in a string. This 
string can then be recalled and 
put back on the screen at any 
point. There are also other 
options to manipulate these 
objects, but they are not true 
sprites; a large 120 byte object 
takes about a quarter of a 
second to write to the screen. I 
feel that the world can live 
without sprites for at least 
another computer generation 
(about 18 months); the 
Commodore 64 and Atari were 
just too far ahead of their time. 



. . .But more colour 

The trade-off against the sprites 
is more colour. The screen of 
the C16 can have 128 colours 
(121 excluding black) made up 
of 16 colours, B luminence 
levels, and flashing. Screen size 
is 40 x 25 text with four other 
graphics modes. The other 
graphics modes are 320 x 200 
with the previously mentioned 
128 colours being used in a 
colour map system, and 160 x 
200 in a multicolour form. Both 
hi-res screens have an option 
to leave four text lines at the 
bottom of the screen. There are 
some other graphics modes 
and options but these are only 
available by POKEing. UDGs 
are obtained by POKEing and 
manipulation of registers. 

The manual gives no hint of 
these although they are very 
straightforward to obtain. 
When playing with UDGs one 
other feature becomes 
apparent. A character gen- 
erator is 2K long (256 x 8 bytes), 
the C16 one is only IK long. 
How come? Well, the long and 
short of it is that the C16 uses a 
hardware reverse field 
attribute. The top bit of the 
current character displayed 
indicates whether it is inverted 
or not. The advantage of this 
lies in memory consumption. 
The disadvantages are that you 
can only have 128 UDGs, and 
flashing works in a rather 
strange way- A reverse field 
space is shown as a black 
square; when you flash it 
instead of getting a flashing 
square nothing happens. This is 
quite confusing until you 



Hardware Review 




"nr»i 



■ • 




realise that a flashing space 
doesn't change. 

Other modes not docu- 
mented include Extended 
Background Colour mode, 
which gives you different 
background colours as well as 
foreground colours, and 
multicolour characters where 
each character can be made up 
out of a number of colours. 
There may be others but, 
without a technical manual, I 
cannot ascertain them. 

Programming the C16 

While investigating the ROM 
in the machine i came across a 
strange quirk. Before getting 
the manual, I was PEEKing the 
top end of ROM to discover 
the BASIC keywords. Doing 
this produced garbage and not 
the codes that I was expecting. 



However, entering the monitor 
and interrogating .memory 
revealed them: all trie memory 
ging systems of the Plus 4 
ave been left in, so when you 
try to PEEK the ROM the BASIC 
pages it out to allow access to 
the RAM beneath. This is 
alright in a 64K Plus 4 but in a 
16K C16 there is no memory 
there — just garbage. 

This brings me ontoanother 
point. The BASIC (covered in 
the latter half of this article) is 
ideal for an inexperienced user 
or an experienced BASIC user, 
but what about us machine 
code hacks and people that 
wouldn't use BASIC if they 
were paid to? 

The answer is TEDMON — 
a full feature assembler, 
disassembler, monitor, 
debugger. It is similar to 
Extramon 7.5 and is very good 



indeed. This makes writing 
assembly language very easy as 
you already nave most of the 



development software built in. 

Here is a list of monitor 
commands. 



A ASSEMBLE 
C COMPARE 

D DISASSEMBLE 
F FILL 

GCO 

H HUNT 

L LOAD 

M MEMORY 

R REGISTERS 

S SAVE 

T TRANSFER 



Assemble a line of 6502 code 
Compare two sections of 
memory and report differences 
Disassemble a line of 6502 code 
Fill memory with the 
specified byte 
Start execution at the 
specified address 
Hunt through memory for 
all occurrences of certain bytes 
Load a file from tape or disk 
Display the hexadecimal values 
of memory locations 
Display the 6502 Registers 
Save to tape or disk 
Transfer code from one section 
of memory to another 




II 












mt _| _ ■■■■■■ 




S5T_ ^ 



f 1 




The monitor can also be called 
by using the reset button. This 
is a great feature and is in a little 
recess just by the power supply. 
Press it in and the machine goes 
back to its power on state — 
memory contents are pre- 
served but it is awkward to get 
at them. The beauty of it all 
comes when you keep the 
STOP key pressed down at the 
same time as you press in the 
reset key: the computer jumps 
into the monitor, key in 'X' (for 
eXit) and you are back in 
BASIC, complete with intact 
program. 

BASIC on the 16 

Commodore BASIC has been 
around in one form or another 
since the early PET in the mid 
70s; little has happened to it 
since then. In the outside world 
fancy, structured BASICS have 
been the order of the day. BBC 
and QL BASIC are so far 
removed from the original 
Dartmouth BASIC that they can 
hardly be called BASIC at all. 
The Commodore 16 is the first 
major departure from the 
standard Commodore BASIC. 
The 64 and VIC use BASIC 2.0, 
the business machines use 
BASIC 4.0, The Commodore 
16's BASIC 3.5 does not really 
fall between the two but goes 
beyond BASIC 4.0. It 
incorporates most of the 
features of BASIC 4.0 and adds 
any new graphics and sounds 
commands, the only com- 
and which is missing from 
BASIC 3.5 but is present in 
BASIC 4.0 is RECORD. 
RECORD aids the accessing of 
data in a random access File; 
this omission is a shame be- 
cause random access files open 



up (no pun intended) great 
scope for business program- 
ming. They can still be imple- 
mented but sending bytes off 
one at a time is a little 
laborious. 

There are lots of new 
commands in BASIC 3.5, some 
replace the POKEing required 
on the Commodore 64 and 
some add extra functions. They 
divide up into five main 
sections: structure, toolkit, disc 
handling, graphics and sound. 

Structure 

The IF..THEN structure has 
finally sprouted an ELSE lag. 
Most Commodore program- 
mers fail to seethe value of this, 
after all you can always put the 
next statement on the 
following line. Where ELSE 
really comes into its own is in 
conjunction with a GOSUB. 
Consider this routine: 

10 IF Z =1 THEN GOSUB 100 

ELSE GOSUB 200 

20 PRINT "BACK FROM THE 

ROUTINE" 



Without the ELSE it would have 
to look like this 



10 IF Z=1 THEN GOSUB 100 
15 IF Z<>1 THEN GOSUB 200 
20 PRINT "BACK FROM THE 
ROUTINE" 



Without the test in line 15 the 
program would always get to 
200. The ELSE function is a very 
valuable addition to Com- 
modore BASIC. 

Brand new structures are 



DO. .LOOP WHILE and 
DO.. LOOP UNTIL. These allow 
a FOR. NEXT type of loop 
where the control variable can 
be altered in the middle of the 
loop. They do of course mean 
that any program with the 
variable DO in it will not work. 

Most Commodore users 
will be familiar with the line 



10GETA$:IFA$=" "THEN10 



Which waits for a key to be 

Eressed. Well Commodore 
ave decided that this is so 
common that they have added 
a command GETKEY which 
does the same thing. 

The INSTRcommand makes 
data validation much more 
simple, it returns the position 
in a string or a substring so 
PRINT INSTR ("NNANNN", 
"A") will give the answer 3. 
Think how useful this is for 
adventures, all you need is a 
INSTR ("NORTHSOUTHEAST 
WEST",D$). 

To neaten up output there 
is the PRINT USING command, 
this allows you to define the 
shape of the output and the 
decimal point and pound sign 
are looked after by the 
computer. Adventure writers 
will appreciate the RESTORE 
< line number > feature and 
everyone will appreciate the 
TRAP < linenumber > com- 
mand which causes the 
program to jump to a specified 
ine if an error occurs. This can 
ead to sloppy programming 
but its benefits, in preventing 
the user of a BASIC program 
getting into the program when 
an error occurs, far outweigh 
the disadvantages. 

m m 



♦ 3 



MCL P 



Toolkit 



From the early days of the PET 
there have been add-on 
toolkits for the PET. The C16 
comes with one built in. Most 
prominent is the HELP key. 
When an error occurs in a 
program pressing the HELP key 
causes the line to be listed with 
the offending statement in a 
multi-statement line flashing. 
The VIC and 64 have always 
required a machine code patch 
to allow them to use the 
function keys on the left hand 
side. The C16 has a KEY 
command. Just typing KEY 
produces a list of the key 
definitions on the screen. KEY 
followed by a number and a 
string allocates that string to 
the key specified by the 
number. Even the HELPkey can 
be redefined. 

An AUTO command 
provides automatic line 
numbering. It works in an odd 
fashion, you have to type 
AUTO and then the increment. 
Then you start entering the 
program with a line number 
and then all the subsequent 
line numbers are generated for 
you. The AUTO command is 
not quite fast enough and can't 
keep up with a key defined 
with a message and a carriage 
return. The AUTO mode is 
switched off by hitting return 
over a blank line. 

The RENUMBER command 
neatens up programs and 
allows forgetful program-mers 
to squeeze in that essential bit 
of code which was missed out. 
Unlike the dreadful renumber 
in Simons BASIC thisone works 
properly and renumbers 
GOTOs and GOSUB's. 



The toolkit for the old PETs 
had a great TRACE function. 
This gave the line that was 
being executed and the last few 
lines above that in a window. 
The C16 just prints out the line 
being executed at the current 
print position. This means that 
the screen gets cluttered with a 
load of line numbers and 
cannot see what is supposed to 
be going on. It is switched on 
with TRON and off with 
TROFF. 

Disc handling 

BASIC 4.0 programmers will be 
familiar with all these 
commands. 

BACKUP provides a fast 
backup between drives on a 
dual drive unit. The only way of 
using this is with a 4040/8050 
type drive and an interpod 
since the 1542 is only a single 
drive. There may be a dual 
drive in the pipeline; one was 
pictured in Commodore's 
report to shareholders. 

DIRECTORY shows the 
contents of a disc without 
destroying any BASIC program 
in memory. There is no 
CATALOG command as used 
in BASIC 4.0. 

DLOAD and DSAVE load 
and save files from and to disc. 
HEADER formats a new disc; 
there are two ways of doing 
this, a full HEADER which 
formats the whole disc and a 
quick HEADER which just 
formats over the directory on a 
disc which has already been 
used. The former is probably 
safer since it ensures the whole 
disc is safe to use and there are 
no bad sectors. RENAME does 
just that; it allows the name of a 



file to be changed on the disc, 
ideal for archiving a file you arc 
working on. 

COPY isslowerthan backup 
for copying a whole disc and 
does not format the disc it is 
copying onto but will copy one 
or a selection of files. 

Overall, the disc handling 
commands are a very useful 
addition — for disc users — but 
how many people will spend 
£230 on a disc drive for a £140 
computer remains to be seen. 

Graphics 

By far the greatest improve- 
ments in Commodore BASIC 
have occurred in the field of 
graphic commands. The use of 
high resolution graphics really 
clobbers the memory, in high 
res mode the user is left with 2K 
to work with. Clever machine 
code could eek this out but 
most users will want to use 
BASIC. 

The non-high res com- 
mand is COLOUR. This 
replaces all the messy POKEing. 
There are three parameters to 
this command: 

type, colour and brightness. 
The type is a number between 0 
and 4: 

0 — Background 

1 — Character (INK) 

2 — multi colour 1 

3 — multi colour 2 

4 — border 

To use the high resolution 
graphics there is the GRAPHIC 
command. This allows for two 
modes, a 320 by 200 mode 
where the colour resolution is 
limited to two colours per 64 
pixels and a multi colour mode 
which allows four colours per 
64 pixels. There is an option to 



clear the graphic mode as you 
enter it. The graphic screen can 
be cleared with the SCNCLR 
command. The DRAW 
command will either draw 
from the last point or from and 
to a specified point. The colour 
can be given for each line. One 
of the major problems with a 
graphics screen is the difficulty 
of printing text to it. Drawing 
out a whole word can be very 
laborious. The C16 has two 
ways of overcoming this. The 
first is a text window at the 
bottom of the screen which can 
be printed to and which scrolls 
in trie normal way. The second 
is the CHAR command. This 
either writes or erases a given 
string at a specified position; it 
is slow but allows the string to 
be put anywhere on the 
graphics screen. The BOX com- 
mand is a fast alternative to 
using four draw commands. It 
is possible to produce a filled or 
rotated box. The CIRCLE 
command is a little slow but 
makes up for that in its 
flexibility; it can be used to 
draw any polygon or oval. 
Colour fill is quite difficult to 
write but this is no problem on 
the C16 which has a PAINT 
instruction. The 121 colours 
make the C16 a very pretty 
machine. 

An attempt to mimic sprites 
has been made by the inclusion 
of the commands GSHAPE and 
5SHAPE. These suck graphics 
from the screen into a string 
which can then be squirted 
back onto a different part of 
the screen. There are flags for 
different logical operations 
which can be used to produce 
different effects when re- 
printing the software sprite. 



Sound 

Sound on the C16 is a doddle 
when compared to the 64. This 
is partly due to the new BASIC 
commands and partly due to 
the lack of facilities. There are 
only two commands, VOL and 
SOUND. There are two musical 
voices and one noise channel. 
The parameters forSOUNDare 
the voice number, the note and 
the duration. It won't be long 
before we start to learn the 
standard zapping sounds. 



Final points 

The manual is excellent and 
way past Commodore's usual 
standard. It is informative and 
instructional for the first time 
user. For the experienced 
person there are memory maps 
and register details. 

At only 16K the C16 looks a 
bit on the slim side, especially 
as the system cust out 4K for the 
operating system and screen. 
This leaves vou with 12K for 
programs. This is not too bad 
considering that Commodore 
machines are very frugal with 
memory consumption. 

Finally, another 10K 
disappears when using hi-res 
graphics, thus leaving only 2K 
for the user. Through clever 

Erogramming, an extra 2K can 
e extracted from the machine 
making a grand total of 4K!!! 

All we can hope for is that 
memory expansion units 
become available as soon as 
possible, if not from 
Commodore then from third 
I party manufacturers. 



[ 




COMMODORE 

YOUR BEST INDEPENDENT COMMODORE MAGAZINE 



Whatever you do, don't let this happen 
to you. When you rush down to your 
newsagents to get your copy of the 
latest Your Commodore don't suffer the 
disappointment of being told they've 
none left. 

Why not sit in the luxury of your 
own home and feel safe in the 
knowledge that your copies will come 
neatly wrapped winging their way 
through the post and find themselves 
popping through your letter box? 

Whatever your interest in the 
Commodore range of computers and 
peripherals, you simply cannot afford to 
miss a single issue. The magazine is 
packed with news, reviews of the latest 



software, information about the books 
for sale, articles to help you with your 
programming, games to type in and 
play, useful routines to make your 
computing life easier, and all sorts of 
useful, informative and entertaining 
features. So whether your interest is 
purely in the latest games available for 
the VIC 20 or in reading a serious 
review of the most recent hardware for 
your Commodore, you must ensure that 
you read and inwardly digest every issue 
of Your Commodore. 

And it's so easy to do! Just fill out 
the form below, write a cheque and 
send it off to the Subscriptions 
department. You know it makes sense! 



SUBSCRIPTION ORDER 
FORM 

Cut out and SEND TO: 
YOUR COMMODORE 
INFONET LTD., TIMES HSE, 
179 THE MARLOWES, 
HEMEL HEMPSTEAD, 
HERTS, HP1 1BB 
Please commence my personal subscription 
YOUR COMMODORE with the issue 



SUBSCRIPTION 
RATES 

(tick as 
appropriate) 



UK 



£13.40 for 12 issues 



£15.30 for 12 issues I 
Overseas Surface 

£31.20 for 12 issues 
Overseas Air Mail 



/ am enclosing my (delete as necessary) 
Cheque/Postal Order/International Money 

Order for£ 

(made payable to ASP Ltd) 



OR 

Debit my Access/Barctaycard* 
(•kdelete as necessary) 



D 



Please use BLOCK CAPITALS and include post codes. 



Name (Mr/Mrs/Miss) 
(delete accordingly) 



Address 



Signature 



Date. 



ATTENTION! ATTENTION! ALL COMMODORE USERS! 

A FREE LIGHTPEN! 



Yes a FREE Light Pen! with every GRAPHKIT! 
Graphkit is the ultimate in drawing!, designing! or 
painting! (using the light pen of course, which 
incidentally has a full 3 year warranty!) Graphkit will 
amongst other things allow you to: 

• Draw free handed on the screen anything from a 
Micky Mouse to your latest integrated circuit! 
With all the fill colour and erase facilities of course! 

• Save/load your latest master piece to/from the 
disk/tape drive 

• Or directly copy the drawing on the screen to the 
printer! And keep it for ever or send to a friend as a 
post card! 

• Design your own colourful sprites and characters 

• Play the games in the package! or use the light pen 
in your own games/education/programs 

GRAPHKIT is available on' disk and tape. Tape 
version is £1 595 and disk version (recommended! is 

£19.95. 




All you 1 540/1 541 disk users DMON 1 Is here at last. Dmon is the disk monitor you have been waiting for it wi 
allow you to: 

• read/write blocks from/to the disk 

• display and edit blocks on the screen 

• display and send disk messages/commands 

• transfer your programs from tape to disk or disk to disk or even disk to tape! • and more! 
DMON comes on DISK at only C9 .95. 

TORNADO 20/64 

Do you use tapes? Are you sick and tired of waiting 
for your programs to be Loaded/Saved from/on the 
tape? Then you need a TORNADO!! Tornado allows 
you to Save/Load/Verify your Basic/machine code 
programs faster thart a CBM 1541 disk drive doesl 
Due to popular demand! Tornado now comes with 
new and more powerful commands plus extra 
instructions to assist you in making fast versions of 
your existing machine code/Basic programs. 
Tornado is available on tape for CBM 64 and 8K + 
Vic 20. 

BREAKER 20/64 

Do your Run/Stop and Restore keys often tail? Do 
you want to come out of those crashes?! Or get into 
those unbreakable programs?! Then what are you 
waiting for, get yourself a BREAKER!! Reset switch 
and let your computer know who is the boss!! 
Breaker can be connected to your machine in 
seconds, no soldering. Included with the Breaker is a 
copy of basic recovery software on tape. Now 
available for any CBM 64 or Vic 20. 




I BSF CSL, 82 FURNACE DRIVE, CRAWLEY, W SUSSEX 




RH10 6JE. 


Ptease send me 


Tornado at £9.95 • mv 






free! Breaker 




Please send me Breaker at £7.95 


L 


..DMON at £9.95 


Please use this form and block letters only. All prices 
are inclusive of p&p (mail order only, add £2 if outside 
UK). Please post to: 

BSF CSL, 82 FURNACE DRIVE, CRAWLEY, WEST 
SUSSEX RH10 6JE. 



Getting into a loop 
over BASIC? Then 
follow A P and D J 
Stephenson's advice 
on conditional 
processes and loops in 
the third part of this 
series. 



THE POPULAR PRESS IS 
fond of implying thai com- 
puters, in some way or another, 
have electronic brains' and 
that they work things out for us. 
This is typical media rubbish. 
Computers don't know how to 
work anything out. They do 
exactly what they are tola and 
nothing else. If a human 
doesn't know how to solve a 

Kroblem then no computer, 
owever much it weigns or 
costs, can solve it. Naturally, 
every problem could, in 
theory, eventually be solved by 
some form of trial and error 
process but this is not really 
solving the problem — it is just 
laboriously eliminating the 
methods which won't solve it) 
Fortunately, the computer 
works so much faster than 
humans that even trial and 
error methods are often 
practical, even if it involves 
working through millions of 
incorrect answers before they 
hit, by chance, on the right 
one. Perhaps it is this which is 
partly responsible for the myth 
that computers have 'intelli- 
gence'. Nevertheless, there is 
one statement in the BASIC 
vocabulary which, superfi- 
cially, appears to imbue the 
computer with some intelli- 
gence. This is the IF/THEN 
statement because it appears 
that the computer is capable of 
making a decision. (In reality, 
the computer doesn't make the 
decision at all but it seems as if 
it does). The format of the IF 
statement is as follows, IF 
condition THEN action. 

Example: 

IF A = 20 THEN 110 

The condition is 'if A = 20' 

The action implies 'GOTO 
line 110 for the next 
instruction' Whether the 
action is carried out or not 
depends entirely on the truth 
or falsity of the condition. If it is 
true, the action after the THEN 
part is obeyed. If false, the 
action is ignored and the 
program continues with the 



THE BASIC 
FACTS PT. 3 




next line number following the 
IF statement. In the example 
above, if A was indeed 20, the 
computer would go to line 110, 
but if it was not 20, the program 
would simply carry on to the 
next line instead of jumping to 
110. It is important to point out 
that the particular action to be 
executed if the condition is 
true is not necessarily a simple 
jump to a line number. Here 
are some examples of 
legitimate IF statements: 

IF A > =25 THEN X = X+1 

IF the condition is true, the 
action is a simple increment 
action on X. 

IF BF > K-(B+3) THEN BF = 
K*(BF+3) 

IF A ■ 30 GOTO 236 

(Notice here that the word 
THEN can be missed but and 
replaced by GOTO if the action 
is a jump to line number) 

IF DS = K THEN Z = Z+3:PRINT 
DS 

Notice here that the action can 
be extended to more than one 
statement providing the usual 
colon delimiter is used to 
separate them. The rule is that 
all statements which follow the 
THEN part and which belong to 
the same line number are 
executed if the condition is 
true. If the condition is false, 
none of them are executed and 
the program continues at the 
next line number. 

It is clear from all this that 
although the IF statement 
appears to make a decision, it is 
not a decision in the 



intellectual sense. A true 
decision is based on a 
judgement formed after 
considering the relative merits 
of alternative solutions to a 
problem. The computer is not 
making a decision at all. It has 
no option but to act on the 
value of a variable so it is still a 
moron, behaving according to 
directions given by human 
intelligence. 

We are promised that the 
next breed of computers now 
on the drawing board, will 
usher in the so-called fifth 
generation revolution. These 
are said to have artificial 
intelligence built into them. It 
remains to be seen whether 
this is true intelligence or 
merely an increase in memory 
processing ability. In the 
meantime it is comforting to 
rely on the following 
definition: 'Intelligence is that 
which a computer does not 
have'. 

It will at least preserve 
man's dignity for a bit longer. 

Repetition 

A computer is ideally suited to 
carry out repetitive tasks. That 
is to say, an identical process is 
carried out on a variable, for a 
certain number of times. 
Although the process is 
identical, it is clear that 
something must change during 
each repetition or nothing 
much would be achieved. The 
following terms, relating to 
repetitive tasks, are well 
standardised. 

(a) Loop: the general name for 
value, 26 is the finishing value 

(b) Cycle: one complete 
process. 



(c) The loop Variable: the 
particular variable which is 
changed during each cycle. 

(d) The increment : the amount 
by which the loop is variable is 
changed each time. It can be 
either positive or negative. For 
example, the increment could 
be +3, meaning the variable is 
ncreased by 3 or -3, meaning 
the variable is decreased by 3, 
within each cycle. 

(e) The starring value: this is the 
value given to the variable on 
entering the loop. 

(() The finishing value: the final 
value required of the loop 
variable. When the loop 
variable has reached this value, 
the repetitive process is 
complete and the program is 
arranged to come out of the 
loop. 

As an example, to illustrate 
the meaning of these terms, 
suppose we want the variable A 
to grow, one at a time, from 5 to 
26 within a loop, then A is the 
loop variable, 5 is the starting 
value,. 26 is the finishing value 
and the increment is +1. As a 
further example, suppose B 1 is 
to diminish from 300 to 200 by 
increments of 5. The loop 
variable is B1, the starting value 
is 300, the finishing value is 200 
and the increment is -5. 




Components of a loop 

Bearing in mind the points 
raised above, a loop will consist 
of the following components: 
(a) Initialisation: Preparing the 
loop for entering the loop. This 
will often be no more than a 
simple assignment for setting 
the starting value of the loop 
variable. 



Programming 




(b) The process: This could be 
very simple, such as simply 
priming out the value of 
the variable each time round 
the loop or it could be a highly 
complex mathematical 
operation. It could even be a 
rearrangement of letters within 
a word. In fact the process 
could be almost anything, 
limited only by the imagination 
of the programmer. In some 
cases, loops are used merely to 
cause a delay somewhere 
within a program. For example, 
to display a screen message for 
just sufficient time for the 
operator to read it and decide 
the appropriate action. In such 
cases, the actual process is 
auite unimportant providing 
the execution time is judged to 
be equal to the required delay. 
It should be mentioned 
however that using a loop for 
inserting a delay is not to be 
recommended. It is crude and, 
unless you know the execution 
time of the statements which 
form the process, is little more 
than a trial and error exercise. 

(c) The incrementation: The 
loop variable must be altered 
in some way ready for the 
next cycle. There is no hard 
and fast rule as to the position 
of the incrementing proce- 
dure. Sometimes it may be 
advantageous to increment 
before and sometimes after the 



start of each process. 

(d) The end-of-loop-tesi: This 
is simply a check on the value 
of the loop variable. It is 
made each time round the loop 
to see. if it has reached its 
finishing value. If it hasn't, the 
process is repeated. If it has, the 
loop must be exited. 

The following simple 
programming examples will 
help you to become familiar 
witn tne terms. 



Program 3.1 
100 A=1 
110 PRINT A 
120 A=A+1 

130 IF A > 20 GOTO 110 
140 END 

No apologies are made for the 
childish simplicity of the 
program. It is quite good 
enough to illustrate most of the 
points already made. The loop 
extends over the lines 110 to 
130. Line 100 initialises the loop 
variable by a simple assignment 
statement. The process is 
simply to print out the value of 
A each time round. Line 120 
deals with the incrementation 
of the loop variable, the 
increment being + 1 each time. 
Line 130 handles the end-of- 
loop test by diverting the 
program back to the start of the 



loop each time providing the 
value of the loop variable still 
remains under 20. When it has 
reached 20, the loop exits and 
the program stops. In short, the 
program prints out the 
numbers 1,2,3, . . .19. To 
show that the same objective 
can be achieved differently, 
study the next program. 

Program 3.2 

100 A=-1 

110 A=A+1 

120 PRINT A 

130 IF A 20 GOTO 110 

140 END 



This time, the incrementation 
has been carried out before the 
process but, to satisfy the same 
objective, the loop variable is 
initialised to -1. It may be 
asked, 'Which is the best way?' 
There is no straightforward 
answer to this since situations 
can arise where the second 
version is more convenient. 
However, the first version is 
easier to follow. It is more 
'logical'. Indeed, we can lay 
down the general rule that if 
there is more than one way of 
achieving the same result, 
always choose the one which is 
easier to follow, even if it 
happens to be a little less 
efficient and takes a longer 
time to execute. Saving a few 



microseconds here and there 
can sometimes be important 
but not very often. Tne vast 
majority of programs execute 
almost instantaneously anyway 
(at least as far as humans are 
concerned). Although a lot has 
been written about saving 
computer time, in the vast 
majority of programming 
applications, the advantages 
are often academic rather than 
practical. Avoid using 'clever' 
tricks just to show you are 
clever. You may earn the 
temporary admiration of a few 
neophytes but not for long. 
The watchword of good 
structure is clarity. 



Bugs in loops 

When programming a loop, 
there are two areas in which 
bugs delight to lurk, 
(a) Incorrect number of loops: 
It is very easy to be 'one out in 
the loop count. For instance, i 
both Programs 3.1 and 3.2, it i 
quite possible that the origina 
intention was to print out th 
value of A from 1 to 20 instea 
of to 19. The error, responsible 
for an incorrect loop count, 
can lie in either the 
initialisation or the end-of- 
loop test. 



n 



(b) The endless loop: It is easy, 
in fact ridiculously easy, to fall 
into the endless loop trap. 
Instead of revolving round a 
certain number of times, the 
loop goes on for ever. In other 
words, the program is locked 
within the loop and can never 
escape to the rest of the 
program. The most common 
cause of the bug is a jump to an 
incorrect line. For example, in 
Programs 3.1 and 3.2, if the IF 
statement returned control to 
line 100 instead of 110, it should 
be easy to see that an endless 




loop situation would exist 
because the effective 
increment is cancelled by re- 
initialisation each time. It 
would also happen if the end- 
of-loop test was searching for a 
number which could never be 
reached. For example, if we 
had written 

100 IF A -20 GOTO 100 
it is evident that this value of A 
would never be reached so an 
endless loop would be created. 
If the increment is positive and 
the starting value is greater 
than the finishing value, you 
have an endless loop. An 
endless loop will also arise if 
the increment is negative and 
the starting value is less than 
the finishing value. Unfortu- 
nately, the cure of loop bugs 
is not always so easy to spot. If 
the loop is at all complex, it may 
require a good deal of 
detective work and the 
occasional bout of cursing 
before the cure is found. Very 
often, curing one fault initiates 
another, particularly it you 
have been careless with regard 
to structure. 

The FOR/NEXT loop 
method 



Although the previous method 
of organising a loop is quite 
satisfactory, the designers of 
BASIC were kind enough to 
provide us with a pair of 
statements which were 
intended to make life a lot 
easier. The FOR statement is 
used at the start of the loop and 
the NEXT statement marks the 
end of the loop. The process is 
in the middle. Although the 
Commodore User Manual 
describes the use of the 



FOR/NEXT loop structure, we 
will start from scratch in order 
to amplify some of the points 
made. The format of the FOR 
statement is as follows, 
FOR variable ■ starting v a/ue 
TO finishing value STEP 
increment 
For example, 

FOR A = 1 TO 20 STEP 1 

This will head a loop in which A 
will start at 1 and carry on until 
it reaches a value of 20, 
incrementing by 1 each time 
round the loop. The bottom of 
the loop is defined by the 
simple statement, 
NEXT A 

Note that the FOR statement 
does quite a lot. It combines 
the role of initialisation, 
incrementation and, surpris- 
ingly, end-of-loop test all in 
one go. To illustrate the 
elegance of the FOR loop and 
to see how it compares with 
previous work, study the 
following: 

Program 3.3 

100 FOR A = 1 TO 19 STEP 1 
110 PRINT A 
120 NEXT A 




This will produce identical 
results to the previous two 
programs — it prints out the 
value of A from 1 to 19 
inclusive. It does not require 
the addition of the IF statement 
to terminate the loop. Also, it is 
inclined to be less error prone 
because it reduces the chance 
of being one out in the loop 
count. 

It is important to be aware 
of the following features: 

1. Whatever the parameters 
in the FOR statement, the loop 
will always process through 
once. 

2. The value of the loop 
variable after exiting the loop 
will always be one increment 
more than the finishing value. 
For example, in Program 3.3, 
although only the numbers 1 to 
19 are printed out, the value of 
A after exit will be 20. 

3. If the increment is to be +1, 
it is not necessary to include 
STEP 1. Thus, the FOR 



statement in Program 3.3 could 
have been written in the more 
concise form, 
100 FOR A = 1 TO 19 

4. The loop variable must be 
floating point. We can't write 
FOR A% etc. 

5. The starting, finishing and 
increment values can be 
variable names or any 
legitimate expression. For 
example, the following FOR 
statements are all legal: 

FOR A = B TO C STEP D 
FOR B1 = B+C-3 TO 5*D 
STEP E/3 

FOR C = B-SIN(K) TO 
26*TAN(T) STEP 1/COS (K) 
FOR D = 26 TO 5 STEP -0.1 
FOR K = 26 TO 5 STEP 1 

The last example is, of course, 
absurd but has been included 
to press home that even here, 
the loop will execute at least 
once. 

6. NEXT A can be abbreviated 
to NEXT because there is no 
need to specify the variable 
although some think it is tidier. 



Loop objectives 

To consolidate some of the 
previous material, here are 
some loop problems and 
possible solutions: 

1. A loop which prints out a 
table of the square roots of the 
odd integers from 1 to 17. 

Program 3.4 

100 PRINT CHR$(147): 

REM CLEAR SCREEN 

110 FOR I = 1 TO 17 STEP 2 

120 PRINT SQR(I) 

130 NEXT 

140 END 

Line 100 clears the screen. It is a 
cleaner method than the 
ponderous PRINT "CLR/ 
HOME)" 

2. A loop which prints out all 
integers between 5 and 24 
except 17 

Program 3.5 
100 PRINT CHR$(147| 
110 FOR I = 5 to 24 
120 IF I > 17 PRINT I 
130 NEXT 

3. A loop which prints out 
the sum or all integers from 1 to 
10000 

100 PRINT CHR$(147| 
110 S = 0:REM S IS TO 
HOLD THE SUM 
120 FOR I = 1 TO 1000 
130 S = S+l 
140 NEXT 
150 PRINT S 
160 END 



Two points here. The program 
takes a little while so just wait 
patiently. We are aware of the 
simple formula for summing 
integers but this section is 
about loops. 




Nesting loops 

It is possible to have a loop 
inside a loop and indeed, one 
inside that, and so on. Such 
combinations are called loop 
nests. There is a limit to the 
number of nests but it is too 
large to worry about in 
practical programming at our 
level. Here is an example of a 
simple nested loop. 

Program 3.6 

100 PRINT CHR$(147) 

110 FOR A = 1 TO 10 

120FORB = 2TO 10 

130 PRINT A*B 

140 NEXT 

150 PRINT 

160 NEXT 

160 END 

The inner loop is between lines 
120 to 140 inclusive. The inner 
loop first revolves with the 
value of A fixed at 1 whilst the 
value of B goes from 2 to 10. 
The value of A then remains 
fixed at 2 while the value of B 
again goes from 2 to 10. This 
process continues until the 
value of the outer loopvariable 
has reached 10. Since the 
process within the inner loop is 
simple multiplication of A 
times B, we are in effect 
printing out a set of 
multiplication tables. The 
PRINT line provides demarca- 
tion between the outer loop 
limits. 

Finally, we should explain 
that no attempt has been made 
in any of our programming 
examples to portray a nice 
screen appearance or to use 
literal messages. These will 
come later. Such niceties tend, 
in the early stages anyway, to 
obscure essential points. Loops 
are so important that nothing 
must stand in the way whilst 
they are explained. Soon, we 
hope, they will become second 
nature to you. 



SUMMER MADNESS 
SALE FROM SCI(UK) 

EPSON PRICE SPECIALS 

r-rmmmu\m\\< » EPSON RX80 (DOT MATRIX) . . . JE24&W £199+ vat =£228.85 

J////i/iLll\\\ . . EPSON RX80FT (DOT MATRIX) . £235.00 £229+ vat =£263 35 

EPSON FX80 (DOT MATRIX). . . .£438.00 £324+ vat =£372 60 
EPSON MX 100 (DOT MATRIX). .£475.00 £355+ vat =£408 25 
EPSON RX100 (DOT MATRIX). . .£45fcW£385 + vat=£442.75 
t EPSON FX10CKDOT MATRIX). . .£56*00 £499+ vat =£573 85 




D AIS YWHEELS. . . at an incredible new LOW PRICE! 

JUKI 6100 .just £329 




20CPS: BiDireciional & Logic Seeking 
10, 12, 15 & Proportional Spacing 
Wordstar Compaiable 
2K Buffer: 13 inch Platen 
Underline: Backspace * Lots more 
Centronics Interface Standard 

OPTIONAL RS 232 TRACTOR AND SHEET FEEDER 



VAT = £378.35 

THE DAISYWHEEL THAT 
HAS NO COMPETITION 




We will match any Genuine Price Advertised— 
SCI(UK) IS NEVER BEATEN ON PRICE 



MANY MORE PRINTERS AVAILABLE - 1000s of SCI(UK) BARGAINS/ S( 

send now for the FAMOUS SCI(UK) Catalogue/ - 

for the cheapest prices telephone 0730 68521 or 0730 68522 



MORE SCI(UK) BARGAINS 



SHINWA CP80 £179.00+ vat =£205.58 

- Friction and tractor feed as standard 

80cps 

Bi-directional logic seeking 
13 x 9 dot matrix giving true descenders 
Sub and superscripts. 
Italic printing and auto underlining 
Condensed, emphasised, expanded and 
double strike printing (can be mixed in a line) 
Parallel interface fitted as standard 




FIDELITY 14" 
COLOUR 

MONITOR 

& COMPOSITE 

VIDEO 

£189.00+ vat=£217. y. 






New from the world famous CANON Company 
CANON 1080a NLO DM best value ever at 


• i 




We have interfaces for all types of computers, = 
including CBM 64, VIC 20, APPLE, I RS 80, ■ 
| IBM, BBC, SPECTRUM, QL, etc. ^ 


ggggj Hi Eg 



24 HOUR SECURICOR DELIVERY £9.50 plus VAT • BANKERS ORDERS. Bt ll.DING SOCIETY CHEQUES. POSTAL 
ORDERS - SAME DAY DESPATCH • ALL ORDERS COVERED BY THE MAIL ORDER PROTECTION SCHEME 
NATIONWIDE MAINTENANCE CONTRACTS ARRANGED • EDUCATIONAL DISCOUNTS VERY WELCOME 

It's SUNDAY - Do you realise you can order NOW - We are open 7 Days a Week. 



RANQEKEY LTD. Trsdkig m SCI (UK) 

SCI(UK) 



SCI (UK) FREEPOST (No stamp n—4*d) 
PETERSFIELD HANTS OU 32 2 BR 



DEALER ENQUIRIES I / I 1^ \ SCI (UK) FREEPOST (No iltmp n«*d*d) 0730 68521 EXPORT ENQUIRIES 

WELCOME l^I-ll UIV I PETERSFIELD HANTS QU 32 2BR n7Qn fi O C O T NO TAX 

WRITE FOR DETAILS % • ^ f 0730 68522 DELIVERY AT COST 

Large showrooms now open at 12 High Street, PETERSFIELD, Hants. GU32 3JG Telex 86626 MYNEWS G 



Les Allan's fast load 
utility should stop you 
nodding-off whil 
waiting lor your 
favourite progr; 




TURBO 64 




This utility, when completed, 
exists as a machine code file 
booted from basic to $C999 and 
remains in residence to 
perform the following: 



M/C routine to save the 
finished product by pressing 
RECORD and PLAY on the 
tape. 

When the finished program 



SYS 49152 

SYS 50000 
SYS 50700 



text mode to prompt available 

functions 

activate Turbo 64 

save relevant section of 

memory to tape 



Turbo 64 commands are as 
follows: 

*- L this wilt load, at turbo baud rate, the 1st file 

from tape 

*- L" this will load a namefile from tape 

L" ",1,1 this will load, to the area of memory saved, 
a M/C file 

S this will save, at turbo baud rate, a program 

without a name 
5" " this will save a program with a name 

S" ",1,1 this will save a M/C file to tape from the area 

resident in memory 

this will verify the 1st file on tape 

tf 




Program details 

The program as listed must be 
typed in exactly as written and 
saved prior to running. Error 
trap routines are included to 
ensure that the data is within 
the required limits and of (he 
correct value and quantity. The 
program when run stores the 
relevant data at a temporary 



is loaded and run the M/C 
routine transfers the data to 
$C000 and will remain available 
for use by the programmer to 
load, save and verify at Turbo 
baud rate — 10 times normal 
speed. 

Turbo save routine 

A save routine exists within the 
utility to enable the turbo 



1. 


Load"T64".1.1 


load turbo to memory 


2. 


SYS 64738 


COLD start 


3. 


SYS 50000 


activate turbo 


4. 


^ " 


load program 


5. 


RUN 


figure 1 



and $C608. 

This can then be used to 
load turbo saved programs as 
in figure 1. 

M/C files can be loaded by 
using a BASIC header as follows 

10 lr A=0 THEN A=1:LOAD"T 
64M.1 

20 IF A=1 THEN A=2:SYS 50000 
30 IF A=2 THEN A=3:— L"",1.1 

The routine accessed by SYS 
50700 should then be 
appended to the BASIC boot 
followed by the turbo saved 
program. 



■ 



address at $8000 and when 
actioned transfers the data to 
the start of BASIC as a M/C file 
for the finished product. At this 
point the program when listed 
has overwritten the 'BASIC 
boot' and exists as a single line 
number 10 SYS 2064. The 
prompt on the screen is the 



routine to be used as a header 
for turbo saved programs. This 
is accessed by the command 
SYS 50700 and, when the 
prompt appears on the screen, 
the routine is saved by pressing 
RECORD and PLAY on the 
tape. The turbo routine is then 
saved to tape between $C350 



N.B. 

Whereas the Commodore 
Logo key is used to commence 
the load routine for normal 
useage the turbo routine 
requires the use of the SPACE 
BAR to start the load sequence. 

This utility can and has been 
used to successfully transfer 
many commercial programs 
but information on such 
matters is strictly confidential 
and outside the scope of this 
article. Suffice it to say that 
material that would normally 
take 15 min to load will take a 
mere 1.5min with this utility. 




Program Listing 



10 
15 

28 



30 
^5 
4* 
48 
50 
55 
60 
65 
?& 
75 
88 
35 
90 
35 

100 

195 
■ io 

115 

120 

125 

130 

135 

140 

145 

150 

155 

160 

165 

179 

175 

180 

185 

190 

195 

260 

285 
210 

215 

220 



khM UrNHHt TU*B0 TAPE UTILITY FOP COMMODORE 64 »»««» 

PW.E53230.8 : P0KE532S1 > 0 

PP1NTCHR*U47>CHR*<5>SPCU2>"^ TURBO 64 SO" 
F'PINT PRINT 

PRINT"THIS BASIC PART OF THE PROGRAM STORES" 
PRIHI-IHE TURBO ROUTINE AT A TEMPORARY ADDRESS" 
PRINI-Of- 32768 1*3000 J IN ORDER TO ENABLE THE" 
PRINT"F1NISHED PROGRAM TO BE TRANSFERRED TO" 
PRINT" THE START OF BASIC AND SAVED AS MACHINE" 
PRINT"C0DE NITHOUT THE NEED TO USE A MONITOR" 
PRINT 

PRINrSPC<3>CHR*(l29)"!'! WARN I NO Ml !M WARNING 
PRINT PRINTCHP*<28> 

PRINT-THIS PROGRAM MUST BE SAVED AS THE M/C" 
PR INT "ROUTINE USED HILL OVERWRITE THIS PROGRAM" 



f 1: 



REM MNtttttt«K»*ff*»»««*tt HEX LOADER WHMMMMM HWWWHWH I 
INC"0 SUM=0 

PFADl'Hi I F Dh*= " END" THEN 1 70 
IFLEN(DA*,'O2HNDDAJO"END"THEN210 

H=ASC<LEFT*(DA*. l>> H1 = <H-48>#16 IFH>57THENHl=<H-55; 
H=ASC<PIGHT*<DA*, 1 t > H2=<H-48» • IFH>37THENH2«<H-55> 
BCD=H1+H2 IFBCD<0OPBCD>255THEN21O 
P0KE32768*INC.BCD INC-INC+1 SUM=SUM+BCD 
PRINT PRINTCHR*<5>SPC<.5»"DHTUM LEFT FOP TRANSFER :". 
PR I NT 1 920- 1 NCCHR* '1 57 > CHR* ( 32 ) CHR* < 145) CHR* ( 1 45 > 
GOTO110 



REM tt*(t#»t#*t**tH* SAVE ROUTINE #*»**» 

IF INCOl 920OPSUMO 1 874 76T HEN2 1 0 
PRINTCHR*<147>"DATA TRANSFER COMPLETE" 
PRINT : PRINT PRINT "HAVE VOU SAVED THIS PROGRAM 77" 
0ETKEV* : IFKEV*0"V"ANDKEV*0"N"THEN185 
IFKEY*="V"THENSVS34560 END 

PRlNTCHR*tl7>CHR*<17>"SAVE"CHR*i34J"TURB0 BOOT" CHR* '.34J 
PRINTCHR** 145>CHR*<145»CHR*a45;CHR*a45; 
END 

PRINTCHR*' 147) "ERROR IN DATA STATEMENT H'"-ST0P 
REM ##*(*»» Mttttfttt HE;; DATA FOR M/C ROUTINE 



64 Utility 



225 

238 DATA 
255 DATA 
240 DATA 
245 DATA 
250 DATA 
?SS DAT ft 
260 DATA 
265 DATA 
270 DATA 
275 DATA 
286 DATA 
285 DATA 
290 DATA 
295 DATA 
300 DATA 
305 DATA 
310 DATA 
315 DATA 
320 DATA 
325 DATA 
330 DATA 
335 DATA 
34D DATA 
345 DATA 
350 DATA 
355 DATA 
360 DATA 
365 DATA 
370 DATA 
375 DATA 



380 
385 



DATA 
DATA 
390 DATA 
395 DATA 
400 DATA 
405 DATA 
410 DATA 
415 DATA 
420 DATA 
425 DATA 
430 DATA 
435 DATA 
440 DATA 
445 DATA 
450 DATA 
455 DATA 
460 DATA 
465 DATA 
470 DATA 
475 DATA 
480 DATA 
485 DATA 
490 DATA 
495 DATA 
50O DATA 
505 DATA 
510 DATA 
515 DATA 
520 DATA 
525 DATA 
530 DATA 
535 DATA 
540 DATA 
DATA 



54! 



550 DATA 
555 DATA 
560 DATA 
565 DATA 
570 DATA 
575 DATA 



0B 1 08 . 0A . 
E0.3D. A9, 
E0.C0.BD. 
0B,9D,80, 
BD-70.0E. 
CC . R9 - 
0E,8D,20, 
F0.FF.A9. 
D2-FF.E8. 
A8.02.F0. 
A7.02.A9. 
AE, A7.02, 
A8.02-ES, 
A2 ■ 00 , 8E , 
02 , BD, C0> 
E8.3E. A7, 
85.C6.20. 
08. 12,75, 
66.60.60. 
60,69-00, 
20.B0.60. 
20.20.7D, 
7D.20.7D. 
20,02,28, 
B2-6B.20. 
AD.60.7B. 
70.70.20. 
20 , 20 . 20 - 
20.B1.AD, 
6B. 20,20, 
60.60.60- 
60 1 60 - 60 . 

00 .00.00- 

48.49-53. 
4C, 45,53 - 
20,42.45. 
20,26.26, 
45.4E.20. 
20.42-41. 
54,48.45, 
20.5F.4C. 
20.20.4C- 
45-00.20. 
20,20,20. 
46.49.4C, 
20,20.20, 
20.5F.53. 
20.20,53. 
45.00,00. 
20-5F.56. 
20.20.56. 
40.45,46. 
46.59.29, 
52, 45. 2D- 
4F,20-45, 

30-00.00. 

20.54.4F. 
20-53. 54, 
5B8D.08, 
5F.F0.03- 
10.C9.56, 
A7.20-73, 
4C.AE.A7. 
55. 50,45. 
00,00.00, 
00. 00- 00. 
00.90.00, 
00 . 00 . 00 . 
05.86.AB, 

38. F8.20. 



00, 9E, 
02, A2. 

10, 0A, 

C3,BD, 
9D,20. 
ACf . SD ■ 
D0.A9, 
06, 8D, 
4C2B, 
03, 4C, 
0E.SD. 
BD,C0. 
8E, A7, 
A7.02, 
C2.F0, 
02.-A9, 
E4. FF . 
60,60. 
60.60, 
70,20, 
69,20, 
00, 7D. 
20 . 7D . 
70 • 00 ■ 
AB . 60 . 
20. 7D, 
20.70, 
7D.20. 
20,20. 
20. El ■ 
60.60. 
60,60, 

00, 00- 

20 1 55 . 
20.50. 
00. 4C. 
56.45. 
54.49- 
55.44, 
20-46- 
20-20, 
4F.4I, 
20. 5F, 
20.20. 
45.00. 
20.20. 
22. 4E. 
41,56. 
00-00. 
20.20. 
45.52. 
49. 4C. 
4E.41, 
41.43. 
4E. 54, 
50,52, 
20,51, 
41-52. 
03 ■ A9 . 
4C.E7. 
F0.15. 

00.20. 
00.00, 

52. 4D. 
00 . 00 . 
00 ■ 00 . 
00.00. 
00.00. 

20, D4. 
8F.F6. 



32, 

00. 

9D, 

B0. 
C6, 
A7. 
03. 
86, 

C0, 

1A. 

86- 
Cl. 
02. 
18. 
07, 
19, 
C9, 
60, 
60. 
60, 
75, 
20, 
20- 
7D. 
B3, 

00- 



AD. 
20, 
60. 
60, 

00, 

54. 
52, 
4F. 
52, 
4D. 
20. 
4F . 
20, 
44. 
4C, 
4C. 
20. 
20. 
41 . 
45. 

00. 

20. 
49. 
45. 
4D. 
54. 
45. 
45. 
55, 
54. 
C3. 
A7. 
4C 
E0, 

00. 

4F- 

00. 
00 • 
00. 
00. 
El ■ 

20. 



30. 
BD. 
C0. 

0C, 

E3- 
02. 
3D, 
02, 
EE, 
C6, 
02- 
F0. 
A3, 
AE. 
20, 
CD. 

00, 

60, 
60. 
B2, 
60. 
20, 
7D, 
20, 
20. 
7D- 
7D. 

00. 

60, 
7D, 
60, 
60, 
00, 
49. 
4F, 
41, 
43. 
45. 
20. 
4C, 
20. 
20. 
22, 
4F, 
20, 
20. 
■411 . 
20, 

00. 

20- 
46, 
22, 
45, 
49. 
52, 
53, 
49. 
5D. 
8D. 



20 ■ 
08. 
C4. 

00. 

4E. 

00. 
00. 
00, 

00. 

A2- 
7D. 



36. 
50. 
CI. 
9D. 
EC- 
AC. 
21- 
AE- 
A8. 
EE, 
18, 
07- 
12, 
A8. 
D2, 
A8. 
F0, 
60, 
60. 
60, 
69, 
7D, 
20. 
20. 
7D, 
20, 
20, 
7D, 
6B, 

00. 

60, 
6B, 
00. 
4C, 
47, 
44, 
46, 
53, 
52. 
4C. 
20. 
20. 
4E- 
41. 
5F. 
■ 

45. 
20, 
00. 
20. 
59. 
20- 
46. 
56. 
20. 
53. 
54. 
00. 
09. 
73, 
AF. 
4i; . 

00. 

20, 

MM . 

00, 

IJM . 

00. 
04. 
C4. 



34.00. 
88, 9D, 
BD.F0. 
60, C4, 
A9,02. 
01 .80. 
D0, 18. 
A7.02. 
02. E8, 
A3. 02, 
AE.A8. 
20. D2- 
CD-A8, 
02, A0, 
FF,ES. 
02. F0. 
F9,4C- 
60,60, 
60,60, 
20, B2, 
20-20. 
20 , 20 1 
7D.20. 
70.20. 
20, 7D, 
20, 7D. 
7D.20. 
20.20, 
20, 6A, 
6A.60. 
60,60, 
92.00. 

00.00. 

49,54, 
52,41 , 
45,44, 
49,45, 
00. 4E, 
41.54. 
4F,57, 
20,20, 
20,31. 
41, 40. 
44,20, 
53,20, 
53,41. 
46,49, 
20, 4E. 

00,00. 

20,20. 

00.20. 

20.20. 
49. 4C. 
41.54, 
53,59, 
20-41. 
20.20. 

00,00. 

03.60. 
00, C9. 
20,73. 
AE,fl7- 

00,00. 

36,34. 

00 - 00 . 
00.00. 
00.00. 
00,00, 

B5.2A, 
20.91. 



00.00. 
00. C0. 

0A , 9D , 
BD,90, 
D0,CA, 
AS. 02. 
AE,A8, 
BD,C0, 
8E,A7, 
EE, A8. 
02. A0. 
FF.E8. 
02. F0, 
02 . 20 - 
4C92, 
03, 4C, 

94, E3, 
60,60. 
60.60- 
20-B2- 
75-60. 
7D.20, 
20. 7D. 
20, 7D, 
20,20, 
20.20. 
7D - 20 ■ 
B1.20. 
60. 6B. 
60.60. 
60.60. 

00.00. 
00.00. 

59,29, 
4D,53, 
2C-53, 
44,20. 
4F.52, 
45,20. 
49, 4E, 
20,20, 
53.54- 
45.46, 
26,20. 
20,2u, 
56,45. 
4C45- 
41.4D. 
00-00. 

20,20. 
20, 5F. 
20,20, 
45.00. 
45.20. 
53.20, 
4E.59- 
20, 5B. 

00,00- 

20-73. 
53. F0, 

00,20, 

20,73. 
00,00. 

0D.00. 
00.00. 
00 , 00 ■ 
00 ■ 00 ■ 
00.00. 

95. AB. 
C4.A5. 



AA.AA, 
BD.30. 
A0-C2. 
0D.9D. 
4C.00. 
20,44, 
02, A0, 
C0-F0. 
02, A9, 
02, A9, 
02,20, 
4C.64. 
03- 4C, 
F0,FF, 
C0.EE. 
86, CO. 

AA , AA 1 
60,60. 
60.60. 
20. B0. 
69.20. 
7D.20. 
20.20. 
20.70. 

AB . 60 1 
7D.20. 
20. 70, 
20 ■ 6h . 
20,20, 
60,60. 
60.60. 

00.00. 
00,00. 

45, 4E. 
20.54. 
41,56, 
41,54, 
4D,41, 
20.42. 
47,00, 
20,20. 
20.46. 
49, 4C, 
4E.41, 
20,20, 
20.20. 
t2. 20- 
45,46. 

00.00. 

20,20, 
56,22, 
56,45, 
00,54. 
54.55. 
35.30. 
20. 4B. 
43, 4F, 

00.00. 

00. F0. 

0B.C9. 
F0,C3, 

00.20, 
00.00, 
00..00- 
00.00. 
00 ■ 00 > 
00.00. 
00.00, 

CA.D0. 
B9, 13, 



580 
585 
590 
595 

600 

605 
610 
615 
620 
625 
630 
635 
640 
645 
65d 
655 
660 



680 
685 
690 
695 

700 

705 
710 
715 
720 
725 



MM . A9 

09- 9B 
BD.00 
40, CS 
C0.20 
E5.A9 
04,20 
07,26 
08, CD 
00. 3D 
F0.FF 
C0.EE 
58, C© 
AE. A7 
A8-02 
A9.00 
AA.&E 665 
60-60 676 
60.60^ 675 
60.69" 
B2.2Q 
7D,20 
20- 7D 
20. AB 
69,20 
7D-20 
20, 7D 
60-6B 
6 A, 60 
60.60~730 
60.60- 735 

00,00 740 

00,54-745 
41,42^750 
4F,20~755 
45,44 760 
20-54-765 
4C20" 779 
59,20 775 
00.20 780 
20,20 -785 
49,4i: - 790 
45. 22 " 795 
4D,45' 369 
20,20" S05 
00,20 '310 
20.20' 
49. 4C~ 820 

00.20 

20,20 
4E.41 
52,49 
4F,20 
52,42 
30,30 
45.59 
4C44 
00. A9 
04. C9 
4C.F0 
4C.AE 
E3-C4 
00,53 

00.00 
00.00 
00. 00 
00.00 
00. A2, , 

F9.20 1 , 925 
69 ,01 I 93Q 



330 
335 
840 
845 
850 
355 
360 
365 
870 
875 
380 
385 
890 
395 

900 

905 
910 
915 
920 



DATA 
HhTh 

iiMlH 

DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
OATn 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 



CA.20.B1, 
0* . FA . Dfl . 

CA,20,B1, 
91.C4.93. 
A2.03.E6. 
E5. AF.90, 

84. C0.53, 
AD . 1 1 ■ DO. 
A0.00.A9. 
C6.AB.D0, 

85. BD.45. 
20-D3-C4, 
E9,60.CA, 
00,2C.A2, 
20.D4.E1 > 
AB.C9.02. 
85,C3,AD, 
2C,A8,A4, 
F5-84.90. 
C3,85,AE, 
C3.fl5.BD. 
20- AF.C5. 
C0.D0.F6. 
C3,D1,C3- 
C4, A5.C3. 
C4.C8.84, 
F8.20.7D. 
26.BD.A5. 
F9-C4.BD, 
20,F0,C5. 
10.2C.0D- 
0F.DD. 68. 
BD.2F.C6, 
A9- 13, 3D. 
53.59.53, 
30,36,39, 
A5.2B.85, 
20,FD.AE. 
2C20-FD. 
S5-2E,20, 
fl5. 59.85, 
AA, AA.AA. 
A2,00.BD. 
82.9D.01, 
BD,00,85. 
44-E5-A2. 
A9 . 02 . 85 . 
03,AA,05, 
39.2C33, 
4F,20,36, 
END 



C4, A2. 
F? . *fl . 

L4 . M2 i 
20. Bl . 
AC ■ DO . 
E7,EA, 
18, A3, 
29. EF. 
02,20. 
EE. 98. 
07,85. 
A2,U, 
D0.FD. 
01, A4. 
20- FD. 
F9.08. 
3D. 03, 
B7.F0. 
20.D2- 
AD.3F, 
45. D7. 
C9. 00. 
F0.2D, 
F0.02. 
C5.AE- 
C0,53, 
C4,84, 
BO, C9. 
D0.E3, 
26-BD, 
DC • F0 - 
4A.4A, 
F0.07. 
77,02, 
35,30, 
36, 2C, 
57, A5, 
20 ■ 8A ■ 
flE.20. 
FD.AE ■ 
2D-A5. 
AA , AA , 

00.80. 

0A.BD. 
90,01, 
00. BD. 
C6 . A9 . 
11 

38.34 
34.20 



08. 
dpi. 

05. 
C4, 
04. 
AS, 
00, 
3D, 
Bl, 
20. 
07. 
EA, 
90. 
28, 
C4. 
C9. 
85. 
0B. 
F5. 
03. 
05. 
F0. 
20. 
86. 
A5 ■ 
18. 
D7, 
02. 
20. 
EA. 
FB. 
68. 
20, 
A9. 
37, 
22, 
2C. 
AD. 
8A. 
20, 
5A- 
AA. 
90. 

00- 

00. 
13, 

5o . 59 . -jo * o— 



30. 
92. 



B9.AC. 
A2.04. 
ty-L0- 
84-07. 
E6. flD . 
D7.20. 
SD.A0. 
11.00. 
C4.A2. 
B1.C4. 
A9.08, 
09,08, 
05. A2. 
A5.2C, 
20, 7A. 

01-00. 

C4.20. 
88, Bl. 
AD.3E. 
65, C4. 
90. F0, 
f?.^ ■ 
flF,C5, 
90,45. 
C4,E5, 
A9.00. 
A9.07. 
D0.F5. 
DD.C5. 
Efl.EA. 
AD.0D- 

00.00. 

02. FF, 
0D.8D. 
36-39. 
54-20. 
85.58. 
20. F7. 
AD- 20. 
56. El • 
85. 2E. 
AA.AA. 

01.08. 

83. 90. 
BD.00. 
87. F0. 
3D. 77. 
3 

2C.22. 
22.2C, 



00,20. 

Fl.BR. 

Bb-L'V. 
A2,07. 
CA.CA, 
B1,C4, 
02. 4C. 
CA.D0. 
07,88. 
A2.07, 
85. A3. 
20. D3. 
0B.CA. 
86, 0A, 
E1-4C. 
F3-A5- 
50, F7. 
BB • D9 • 
63,38. 
23, ED, 
04 - A9 - 
AB-20. 
20. DO. 
07,85, 
AF.90, 
80. A0. 
80.06. 
A0 . 09 . 
88 ■ D0 ■ 
C6. A3. 
0D.8E. 

00.00. 

E8.4C 
73 1 0- 



36.34. 
A5.2D. 
B7.A5, 
F7.B7. 
A5.57. 
60 ■ AA . 
AA.AA. 
BD.00, 
01. 0B. 
86.90, 
07.20. 
32. H9. 
34,34, 
93.05. 
30,31, 



B1,C4- 
r.4 , B7 . 

EA. Bl 1 

M c , . Hi . 

A2,07. 
93. FC. 
FD.88. 
C0.09- 
38.00. 
06. BD. 
C4.A2. 
00. F0. 
86.93, 
74, A4. 
B9-F0. 
20, E4, 
41,03. 
ED.3C. 
30.03. 
FF.85, 
0D-C5. 
C5-C4. 
07- E6. 
DO, 20, 
02, 4C. 
00. A2. 
20 , 00 . 
F6.60, 
00. F4, 
07,00- 

00,23. 

11. C6, 

0~ 

30,30, 
22-2C. 
85.59. 
14.85. 
A5. 14. 
85.2B- 
AA. AA, 
AA, AA, 
81.90. 
BD.00. 
01 .0E- 
02. FF. 
0D.8D. 
36,34. 
12.20, 

13.00. 



A2-06. 
90.03. 
tf^,B5, 
AC, 20, 
C5.AE. 
88, D0, 

A0.00. 

00. FA. 
OA. F4, 
F7,Cfl. 
A5.01, 
0E . C6, 
85.01, 
84, C3, 
20.61, 
0A.AD. 
FF.F0. 
00. CE. 
03.08- 
35. AF. 
90. 4C. 
91 -B2- 
93.00. 
C3.D0, 
DD,C5. 
93,FC, 

01,20. 

C5,C9, 
A9,08, 
A5> BD, 
48. A9, 
44, E5- 
A9.02, 
03. AA. 
30,36, 
36,31. 
A5.2E- 
2B.A5- 
85-20, 
A5.58- 
AA . AA . 
AA ■ AA • 

01.09. 

84.90- 
E3.D0- 
E3.4C. 
78,02, 
2C32. 
54,55, 
00,00. 



C8.C0 
A3. 20 
Hb.t:y 
B1.C4 
A5.AD 
F6.C8 

84. C0 
78.60 
A2.05 
CA.60 
23, F7 
A3 -00 
60, A2 

85, C4 
C5.A5 
3C03 
FB.20 
98-D0 
13,65 
20.76 
fl9,F5 
C8,C0 
02,31 
02, E6 
20,70 
20, 17 
F0,C5 
02, F0 
35, A3 
60, A9 
19,80 
A2.00 
85, C6 
85.11 
2C35 

13.00 

85. 5A 
15,35 
A5. 15 
85. 2C 
AA.ftA 
AA.AA 
BD.00 
01.0C 
D3.20 
34,87 
6C02 
30.34 
52,42 

00,00 



TURBO TAPE UTILITY FOP THE COMMODORE 64 



UTILITY COMMANDS APE AS FOLLOWS 



# 

t 

* 
« 
ft 
ft 
# 
# 
It 
ft 
ft 
# 
ft 

# tt 
BB»BBBB«aBB««RBB«BB«BflBRflBWB8flfl»BBBflBflBB8KBBBtl*BS#8 



SVS49152 
SVS5000O 
SVS50700 
H_ " NAME " 
^."NAME" 
*V-NflME" 



BOOT TEXT MODE 
ACTIVATE TURBO 
SAVE TURBO 
LOAD NAME 
SAVE NAME 
VERIFY NAME 



# 
ft 

n 
it 
ft 

M 
ft 
t* 
ft 
ft 
# 

LES ALLAN ft 
25TH JUNE 34 ft 




PYRAMID 




THE AIM OF THIS CAME IS TO 
hop around a pyramid whilst 
dodging the balls which rain 
down from above. Beware, 
especially, the blue ball which 
will hatcn into a snake after it 
reaches the bottom of the 
pyramid. The snake will chase 
you and can only be killed if 
you lure it onto one of the 
teleport discs situated at the 
side of the pyramid. Once you 
have landed on all of the 
squares on the first screen, you 
progress onto a new more 
challenging level. 

You commence with three 
lives and gain an extra life for 
completing screen one and 
then one for alternate levels 
after that. To complete each 
screen all the squares must be 
turned to the colour cyan; this 
is achieved by landing on the 
squares a certain number of 
items, depending on the level 
you are on. 

Level Method 

1 land once on each 
square 

2 land on squares twice 

3 land once but square 
changes back if landed 
on again 

4 land twice — changes 
back to halfway stage if 
landed on again 

5 land twice but third 
landing completely 
undoes square 

Having completed level 5, you 
begin again at level one — but 
there are more balls to dodge 



this time round. 

The game includes three- 
dimensional graphics and a 



short machine code program 
to move the sprites more 
quickly. Instructions are 



included in the program and 
control is either with a joystick 
or from the keyboard. 




G4 Game 



Program Listing 




J FOPX-1T04 POKE49494»X0 NEXT 

2 P0KE5328e.5 P0KE3328I,I1 

3 PRINT-fc- 

5 PI1ft»<34>.P<20>. '»<18> 
9 PC*E33269 0 

9 OOSU93000 

10 M<1#J-- <\ 
20 A«<11>-' 

30 A*<I2>-* 
*0 Alii3>-* 
45 Af<14>-' 
50 Al<13»-* 
55 A»<16>"- 
60 Af<l7>»" 
65 A«<10>-" 

re «i(i9>-- 

72 A»<20>." 
74 Af<21>"" 
76 A*<22««" 
78 flt<23>- _ 
80 AJ(24>-- 
92 A*<25»-- 
34 A«26'-" 
96 A*<2?'-" 




D-I«-I R-R-l rt»7 P0*E2047.14 00T0253 
D-P'l H-7 P0KE2047, 14 GOT0233 

D»D-| rt«7 P0KE2047.13 GOT0255 
D-D*l R-R.| M-7 P0KE2O47-13 G0T0255 



K /I 
I V I 

/ \ 
N /\ /I 
I VlVI 

Al/NlA 

✓ *✓ V \ 
K A A <l 
ivlvlvi 
A I A I A I A 
V \S V \ 

K /\ /\ yl 

i vlvlvlvl 
A IAI Al Al A 

' V N 

98 A»<28>--_ N ,A /N /-^ /\ -1 
30 At<29>-" I VlVlVlVlv I 

32 A»<»>«" A I A I A I A I A I A 

93 AK31>"" ^ V V V V V \ 

34 Af 32'"" K /\ <\ /-\ ^\ /\ /I 

35 A*<33>"" I V I V I V I V I V I V I 

36 At<34>"" \ I A I A | A | A I A I - 

100 FORMS- IT 04 COSUB300O0 t4EXI 

102 F0RX-1T06 FOliXtllf H P0» E53287»X-4 NEXT 

103 OOSUST.W0C 

103 Jf<fl>"-C" JK8)»"C* »(!>■■£■ /»<2'"'E- 
110 J»(3>-*Q" J»<9>-"Q" Ji<4>-*Z" J8<6>»"2" 
115 OX-156 OY»53 SH"7 SN-12»INKRN*i<0>48> 

117 print-ojtress any «ev to begin- 

118 OETW IFM---TMEM18 
120 DR-3 DL-4 BH-3.9 NL-3 0050*2000 
150 WC-54272 P0KEVC*24. 13 

280 Fi>E33248'SM*2.0X POKE53249»SN*2,0V REM POSITION SPRITE SM 
205 IFrfTHENFS'l M-N-I G0T0233 
207 I FFS" 1 THENOOSUB700 
210 GETAf IFA*O-"THEN220 
212 «-J«<.PEEK<36320>AHDI5>-5> 
214 !FA*'--THEN255 

220 IFfl*«-0"THENP0»E4?42224 PRINT" 
230 IFA»--2' THEMPC*E4?422.6 PRINT" 
240 IFfl(.-E*THENP0KE4?422. 17 PRINT 
230 lFfl!""C"THENP0KE43422 ■ 1 PRINT" 
235 BC-BC'l 

«P 0»KG0SU»33e. 338,330. 370.400.410. 430. 390. 450 
270 A-PEE*'53278> 

308 SVS12*4836»16 REM MOVE SPRITES 

?10 IFPEE*<3327S>AND128THEt<<iSiJFI00O REN CHECK POP COLLISIONS 

328 G0T02O5 

330 IFBM>-1THEN: ' -8N-1 

332 IPBHD<l)<BMtHEHSJ-SI-"0" MX-0 RETURN 
334 IPSUi"'"THEH»1-8N.| G0TO332 

336 SlMLEFTKSLf -1) SLf*NIDt< SL*.2 > S«"St*SI« V7-VRL<S1»> R7-INI'RND< 1 >».3> 

337 NX-1 RETURN 

338 IFMX-OTMEHRETURN 

33? P0«E53248'V742.140«32»*7 P0KE53249*V 7*2. 83 
340 P0RE33269.'PEEK( 33269 >0R2tV7 
342 RETURN 

338 F0RX-lT0LEN<Sf>SP-VAL<f1IDf<S»,X.I>> 

333 IFSPrHE-*-0"E4*4&8-SP42. 1'7*IN1<PHl><e>«2> 
355 NEXT 

360 RETURN 

370 lFV*l<S«»80fiS«<3THENPOKEVC*4, 16 POKEVC. 48 POKEVCM. 1 1 POKEVC-5.8 

371 POKE53271.0 IFSM<-2TMENP0tE53249.PEE*<33249>*2l 

372 SW-SM-I IFSM-- 3THEMPOKE2040. 1 92 P0HT53287.3 

373 IFSM04THENRETURN 

374 POKE2O40,15 P0KE53287.6 
376 SP"INTIRND< 1 )*2> SD"I 

378 POKE33248.140.32WSR P0KE53249.85 P0KE33269.P££K<33269>01!1 SR«$R*2*4 RETURN 
390 JFSH<-2THENF->E33271.1 P0kE33249.P£EK<53249>-2l 
400 RETURN 

410 Sll-LEFTI'.S*,I> Sf-MIDf<S».2> VH-VAL<SlI> 

413 IRVflT»4£NP0*E5?269.PEE»'33269>flNP(253-2tVfl^Sl.S-SL»*SI» 

*19 RETURN 

430 IFSf04IHENRE tUPH 

432 IFSH>0THENRAMNT<RND<1>*2> SR-SR*1-Rfi*2 SD-SD-I POKE49400. I*RB»7 RETURN 
434 IF$H>-3THENRETURH 

436 PV-l IFSD>D0PSD>4THENPV-PV*I6 SD-SD-2 
438 SD«SD-1 IFSR.'4.2«R-PTHENPV-PV»7 SP-SR-2 
440 SR-SP-1 

442 P0»E4946&PV RETURN 
•>"* BC-0 FO>EVC'4,17 RETURN 
580 PRINT-*! ■ 

5*5 F0PXMT06 SVSI2*40?6«I6 NEXT 
510 FGROD-1T03 
515 ft>K*l 

338 0NKGOSUB59B. 338. 350. 370. 400. 410. 430. 390. 570. 380. 380. 388- 388. 450 
540 SVS1 2*4096* 16 
543 IFK."0TMEN313 

5!*--4&.t SC-Q_Eflex«oroi3 PO»E49407.x.O NEXT Ma'WN 1 
333 POKE33269.F£D.I53269>AHD129 

360 P0K633262. 136 P0KE53263. 53 0-0 C-0 PP I NT - Ij0— MM»WI WW 

563 FM"I«-[HT<PN)»3 OOTO700 
370 *>SP*10'SD 

372 IPNV«I03ORNV'— 6THENFOKE33269. 128 SP-99 ?«»1NT'PN0< 1 >»12*l2> J"J»I 

360 FC«X-1T020 NEXT OETM RETURN 

330 PH't"-l 00 TO? 32 

€99 K* CMflNOE S0U8PES 

^00 Ff^ IFR>0ANI* >I>T|4;N7O8 

702 IF>DL«NI*':.DTHENIl»39 00'030t> 

7t4 iFD-wftNOR.^ei-e'iPR-?? coTOsee 

"06 OOTOIOOO 

708 PN-WD-i .. .-.F 

789 IFD>3ORP;0TMENI000 

710 OMLGOTO730. 880. 550. 900.950 

"68 p^ P ' T 1n ■ 1ThEI * £TUP,, 



-. P<PN>-1 RE I UM 

PN'O 



P(Fto»i Mp-ND-l RETURN 



?;0 fi ETUPfH 
938 IPP'PN)=1TMENS70 

960 PRiNT-^ntir «tin smiwmr p(PN>-i 

963 ND-NIt-1 IFNP-2JOOTO2800 

969 RETURN 

878 PRINT" *Htl Ml IUW * TTMC p(PH'^ 

975 NDWD-I RETURN 

900 CNP'PN>G0T09ie.928 

983 pt:n" i i— ■ n 1 1 * ■ ii— i > i wm 

918 PRINT"^**«B^ TMII nmco^TW. F 

915 N0"ND*1 IFW-21TNEM20O0 

917 RETURN 

920 'RINT-J Mlil iJ'JIIIg'iTinMll^irro 

338 ONPtPN>OOTO96O 970. 

953 print ' ^nivi^^am^rnnMB* : r tat . p«pn>-i return 

:ri-mr Blll«*l* TTW. P<PN>-2 
965 1P"ND*1 IFND-21TMEN2000 
967 RETURN 

978 PRINT- Hill >illl lim r TTIII P<PN)«« NINMD-I RETUP" 

1800 FOKE2047.I P0KE53294.2 POPX-I'TSOO NEXT 

1003 'C-NL-1 P0RX-8T013 P0KE49407.X.8 NEXT P0KE332e l 128 

1018 IFNL<1TICN1040 

1013 PRINT-*11^F» 

1020 BC-0 . : «-"8080- SLI--123456- Df** Of Tftf GET ft* 
102T P0KE2847.I3 PCM-E33294 3 

1030 P0KE33262. 156 P0» =33263- 53 I"0 R=« " I'" M»MMIIMMW«r 

1833 SN"l2-INT-fiNr I '«8' P«»B»1-INT(W>*3 M-0 RS-8 RETURN 
1840 PPINT'^IOU «FE XfDI" 
1043 POKE33269.0 

IfBe L-L»3»H PRINT "»"T"J REACHED LEVEl'L 
1035 SC«304iND«L*ie.5»(L»»'L-l>»6W) 

?60 PRINT-VOUR SCORE UWS'iC 
■MS -*!-0 F0RX«1T04 HS«HS-P5n '49494.X)H8T'8-X*2> "5 " 
1070 :CXC-MSTHENPPIHT"THE MI0-( iCORE 1S"MS GOT On 00 

1080 P»:'<"-CONC*ftIUlft'IONS VOU HWT uaWPED PLL THE0THEP- : a MP BECOME THE 
1090 F*IM> VPREME NOSER I" 
!092 FOPX-ITOJ 

1093 v-nmAJS'SctOKe-xiz**^-*" PO*E«&*H»>: v sc-sc-v«io»<e-y»: next 

1100 F*INT"«PRESS 'SfiCE FOR flNOTHER OtME. ' 
1110 CETflt IFRIC?" "T^ENIIIO 
111! RUH2 

l-L'1 1FL>3THENL-I l**u- ! BN-5.8-<U-l 

2eit =OP>:-ero28 p<x>-e next 

2020 "INT'l- FORX-18T033 P*H.' •MTMO') >IEXT PRINT"»»»»I"«»' M 
2030 0R-3 X»4 MP»0 

;04,1 '1L-I.L-. _ -"-It.T L ^ ■ i.i'Ti 

jWO PPINT'niNJ'PUCTIONe- 

3010 PRINT-MHOP PiOUF THE PVRfiMIP TURNING ~-€' 
3020 PRINT-TOP P«CE : c E'-CRV CUK CVHN. ' 
.^030 PRINT"*1HE PLflTFO*'?i AT THE SIDE OF TIC P^^lf - 
;O40 PRINT'NRE TELEPOPT IC^DS WHICH SENS VOU TO" 
3eT0 FF INT* THE TOP OF THE R«-"-l*!&. T HEV CftN OHLV" 
3O60 ce IMT'BC USED ONCE E«H - USE THEM TO LURE THE* ■ 
3070 FFI«T"SNHKE TO HIS DEATH. " 
?O&0 PRIHT-tJVOU MUST AVOID THE SMAdE ^"II* T>€ ■ 
MM PPINT-EOU'iCINC< BALLS TO SURVIVE. ■ 
3093 PRlHT-ajSE t£VS 0-2.E.C TO MOV'E" 

3097 PRIHT"OR A JOVSTICfc IH CONTROL PORT 2 
3100 RETURN 



DATFU3.7.I3 




OATAOO- 0.0-1 
DATAO. 0.0,0. 


3.0.0 
9.0.0 


I*T«0, 0.0.0. 
DA TAP. 126.0. 
DATA241>2-2- 
DATA136.I 2f 
DAIAO. 127,0. 


9,60.i 
3.231 
1.231 
5. 0.O 


ft r t 



,0 

DATA36. 0.O. 36,0 0 36 
MM9 DAIfl0. 0,33-0. 0-41. 128-8 

30818 DATB14,7,3 

3001! DATA8. 0.0. 0.0.0.0 

30012 PATAO O.O'O.O'O'O 

30013 DATA0. 0.0. 0.0. 60.0 

30014 DMA0. 126.0. 30,223.0.63 
30815 DATA! 43. 128. 127.223. 128.57. 25' 
30016 DATAI28. 0-255 129.0.233,0 
30817 DATA8.234. 0.0. 124.0.0 

30018 DATR36.8.0,36. 0.8.36 

30819 DATA8.0.236.0.I.I48.O.0 
30020 DATA15.I.2 

MMl KATAO.O.O.O-O.O e 
30822 DArf*. 0.0. 0.0.0-62 
:-O023 DATM0.O 233. 128 3 233.224 



i>?025 Wf-i 




3. 240. 15.233.248. 13 
248.31.233.232.31.233 
?8026 DATA232. 31. 233. 2-2 31.233. 232 
30027 DATA31.233.252.15 233. 248. 13 
3P028 DATA233. 248.7. 233- 240 3. 233 

30029 DATA224. 0,233- 128.0.62.0 0 

30030 TATA192.0.3 

38031 PATAO. 13.0.0.23. 128-0 

300 32 DATA63. 192- 0. 102. 64. 0.224 

30033 DAIA64. 0.224. O.O. 230.0 
:O034 DATAO 233.128 0. 1 12. 192.0 

30035 DATA216 . 192. 1 128 I 128 

30036 DAFA0. 1.150 0.0. 243.0 

30037 DATAO. 223- 128. 1,177 128-1 

30038 DATA139.0- 1.129. O-0- 199 
30839 DATA0. 0.97, 128,0.63,0.0 
49999 REM SPRITE SET UP 
38000 READ DN RE ft DSN READCO 

rOOI0 FORX-OT063 READN P0KEDN464.X H NEXT 
30026 POXE2O40.SH DN P0*E33287*SN. CO 
30030 RETURN 

■3O00 CS-0 F0RX-1T048 READA 
35020 CS-CS*A P0KE49167'K.A NEXT 

55040 IFCS<^6798T»4ENPPINT"ERR0f 1M DATA LINES 6OOOO-6O03P- 3 TOR 
36OO0 F0PX-0T015 POE49406 --: 0 NEXT 
56010 CS-0 F0PX-IT064 RE ADA 
36030 CS-CS'A P0KE49423«X.A NEXT 

36040 !FCSO9S9;THENPRINT"ERR0R IN DATA LINES 60O40-- 
RETURN 

DATA162, 233.232. 224. 16.240.40. 189, 0. 193 . 195 . 16, 193. 201 
68010 DATH133.240.24|.24,l23.0.20e.36.233 128.137 O.208. 232. 185 
60820 DAT* 48.193.24.125.0.200.56.233.128,137 0-206 234 253 



"98 NIM4D.1 IFND-21THEH2OO0 
-^0 FE"L*H 

808 OHP'PN'GOTO810,82O 




6O030 DATA192. 76. 19. 192-96 




60040 DATA133.131. 130.131/131. 130-131.133.125 

60038 DATA126. 123. 125. 126. 123 133. 133. 133. 121- 130. 1 31, 131- 130 
60066 DATA13I -153.125. 126. 123- 125 126. 123 133- 153. 153. 117. 123- 130 


919 print- rr-^nir -urn ■^iMtrvr^rr 

915 NT- Nil* | IFHP.21 TMEN2OO0 
917 4ETURN 


rmr. P(PH)-I RETURN 
Ml". P'PN>-2 


60870 DATA136.144. 158. 153. 1 17 123 . 130. 1 36. 144. 138-133. 153.153 

60080 PATA106-1I2I20. 126. 133. 139.133, 106. 112 120.126.133-139,133.153 

READY. 







E 




GRIPPING STUFF 



id 



OVER THE LAST FEW DAYS I 
have been using some of the 
old favourites along with some 
of the newer joysticks. As usual 
with reviews now a stick feels is 
a personal thing and what one 
person thinks is great another 
may think awful. Some of the 
comments regarding reliability 
are based on my experience 

working at one time in a retail 
outlet and so I have a good idea 
aboul whether a joystick failure 
was a one oft, or tends to be 
common in that particular 
type. 

I have dealt with them in the 
order they came to hand and 
not in order of preferance. 

Each joystick I have 
reviewed I have taken to pieces 
in order to see why they failed 
or survived. This dismembering 
was only tried after I had used 
them in order not to ruin them 
if everything shot out at 90MPH 
and lodged itself into the walls. 
I tried each joystick with an 
arcade game of the JETSET 
WILLY clan, a Drawing 
program and the fantastic 
INTERNATIONAL SOCCER 
cartridge which is sometimes 
available from Commodore. 
The toughest test for each 
came when they were used 
with an Olympics type game 
where they needed to be 
whipped from side to side in 
order to make the runner run. I 
feel that this was the ultimate 
test and that this type of game is 
unfair to joysticks anyway. If a 
joystick failed in this part of the 
test I will make it clear. Price 
seems to have no bearing on 
strength it would appear, and 
the only guide I could find was 
the prettier they are the easier 
they are to break. 

Quiclcshot 1 & 2 

We sold a lot of Quickshot 1s 
in the shop and it seems I 
counted them all out and I 
counted them all back in again. 
Unlike harriers these were 
nearly all faulty. It seems you 
either love them or hate them. 
Personally I hate them. Some 
retailers say they are reliable 
others say they are not. I say 
they are not but would like to 
be proved wrong. When they 
started coming back in their 
droves I pulled one to pieces 
and the weak spot was at the 




bottom of the shaft. There is a 
small ring of plastic which 
actually pushes ontp the 
cheapest switches I have seen. 
This ring of plastic, in all the 
returned joysticks, had broken 
and, strangely, all had broken 
on the left hand side. 

The rest of the joystick was 
fine; the rubber suckers at the 
bottom made one handed 
operation easy and the 
contoured handle felt 
smashing. They were easy to 
hold for two handed use and 
were nicely packaged. It was 
just a shame they did not last. I 
did get hold of a new one for 
review and it broke (during a 
winning 100 yard dash). Same 
fault, same place. Life of that 
Quickshot. ..about 20 minutes. 

Then came the Quickshot 
2. This one lasted a little 
longer; about another ten 
minutes. Could it really be the 
same fault? Never. One 



screwdriver and a cut finger 
later I was pleased to see it was 
not. The dreaded piece of thin 
plastic had been replaced by a 
(humping great ring of thick 

Klastic. Tne cheapest switches I 
ave ever seen had been 
replaced by the second 
cheapest switches I have ever 
seen. They had I am afraid 
suffered terminal metal 
fatigue. The switch was a piece 
of very thin gauge metal with 
four prongs. The prong which 
switched to the left hadbroken 
off and the 'UP' prong was 
nearly off. The other prongs 
had signs of hairline fractures. 
The rest of the joystick, like the 
Quickshot 1, was smashing. 
The rapid (cheat) fire button 
was great, the contoured 
handle was brilliant, but I still 
could not turn left. 

I look forward to being sent 
the Quickshot 3. I also pledge 
to review it with an open mind. 



Kempston 

The Kempston has been 
around a long time now and 
still seems to be a favourite. 
They are strong and very well 
made and have a quality of 
finish rare on most joysticks. I 
find them uncomfortable to 
use and would not like one 
myself but many would agree 
to differ and so I would not 
criticise it. A lot weresold in the 
shop and, to my knowledge, 
not one has been returned. I 
can't seem to get comfortable 
with the fire buttons. The price 
is good and, as I have said, the 
quality of the finish is the best 
of all those I have reviewed. I 
can see the Kempston 
continuing to sell well; no frills 
with it but a stayer, it is totally 
black except for the enormous 
red fire buttons. 



The Cambridge 
joystick 

Quite different to the standard 
breed this one: at first it was 
only available with an interface 
but now just the joystick can be 
purchased to use with any 
console that uses the nine pin 
plug. As can be seen, it is a 
different style and at first 
glance would not seem to bp 
suitable for the fast shoot'em 
up type games. I used one with 
a Spectrum at first and al- 
though they are not perfect 
they do perform well. Tney are 
self-centering and once you 
have got the hang of the small 
degree of movement they are a 
treat to use. The metal shaft is 
strong and they lasted through 
all the above games. When I 
worked in the shop we sold 
quite a few of these and only 
had one returned. Thiswasdue 
to poor soldering on the inside 
of the stick, which was easily 
repaired. When I had 
finished I looked at all the 
others but it seemed to be a 
one off fault. They are made 
from a hard plastic, are very 
strong and withstand almost 
anything. They come in an 
enormous box which swamps 
the stick but this is due to the 
fact that the same package is 
used for joysticks which are 
sold with the interface 
software. 



Hardware Review 



This joystick comes into its 
own when used with drawing 
type software. Because you 
hold the stick as you would a 
pen or pencil it is possible to be 
very precise when drawing in 
high res mode. Not so easy with 
a big stick of the standard type. 
There is another joystick 
available which looks exactly 
the same as this one but it is 
not self-centreing. That does 
not sound too bad until you 
come to use it, and believe me 
it's a pig. If this is the stick you 
would like then ensure you get 
the self-centreing model. As 
with the Atari the part that you 
hold does not look comfort- 
able but once you are used to 
the feel it is fine. It is without 
doubt a two handed job and 
attempts to stick it down for 
one handed operation have 
not been successful. It will stick 
down OK but, using it with one 
hand, it is uncomfortable as 
well as difficult because your 
wrist keeps touching the fire 
button. The price is good and it 
is a well maae stick which looks 
practical and performs well and 
from my experience is very 
reliable. As we are on the 



biect of reliability I will now 
al with the two baddies of 



su 
dea 
the bunch. 



The BOSS 

'The Boss is here' so the box 
says. This one feels very heavy 
and sticks quite well to the sur- 
face mainly due to its own 
weight. Its external design, ex- 
cept for the single fire 
button, is similar to the trusty 
old Quickshot 1 but the similar- 
ity ends there. It lasted the 
course and I was blisterless. The 
contoured grip turns on its 
stem and I found that most 
disconcerting. It is strong and 
its internals seem to confirm 
that. I still cannot decide where 
it gets its weight from. When I 
opened it up (expected to find 
a lump of metal but it was not 
there. What I did find however 
were the strongest hunkiest 
leaf switches I have ever seen. I 
feel confident that this one will 
continue to work for a long 
time. The casing is as strong as 
any of the others and it looks 
good in its grey and black coat. 
The fire button was not the 
most pleasing I have used and 
did not seem very positive at 
all. There was no click to it. I 
think it would be a good 
alternative to the Quickshot if 
you really want that type of 
stick, and it appears that it 
would give you a lot more 
service. Due to the rotating 
shaft I did find that it was 
possible to find yourself going 
the wrong way but after getting 
used to it I found it less 



troublesome. For some reason 
I was left feeling unexcited by 
this one. 

Super Stick 

The Super Stick looks like a 
joke. Its stylish box says it is 
built to endure longer than 
most joysticks and boasts a one 
year LIMITED warranty. When I 
had taken it from its box I had 
to stop laughing long enough 
to try it. It looks foul, phallic 
and inferior. (I was proved 
wrong). The SUPERSTICK is 
pretty — just like the elephant 
man! It would look better if the 
colours were reversed. I 
couldn't take their claims for it 
being strong seriously at all but 
it survived. I pulled it apart and 
was amazed. There was almost 
nothing in it that could break. 
Its internals should be a lesson 
to all joystick manufacturers. 
The switches are balls of metal 
sunk into plastic stems. The 
contact is a massive metal plate 
with arms cut out. I put it back 



together and plugged it back in 
and tried to break it. I couldn't. 
I pulled it to pieces again tosee 
if it had suffered. Not a mark. It 
still looks foul and it still looks 
phallic but it is definitely not 
inferior. If strength is more 
important to you than looks 
then have a look at the 
SUPERSTICK. It has only got 
one fire button. It slidesaround 
the table like it has got a mind 
of its own; the non-contoured 
handle slips and it looks funny 
but I challenge you to break it. 
Nice one. Great for kids and 
gorillas. 



The ZipStick 

The ZIPSTICK is another that 
stood the test of the Olympics. 
It is advertised as strong and it 
is. The central shaft of the stick 
is a solid metal bar. A large 
coloured diagram comes with 
this stick showing it's internals 
but I still felt the need to get 
inside myself. Everything was 
tight inside and well fitting. I 




could see the solid shaft and I 
was surprised to see fairly 
standard leaf switches. The way 
thev were placed though and 
the mechanism of the stick 
itself made them potentially a 
lot more hard wearing. 

Again this one is a no frills 
stick out it was very responsive 
and quite unforgiving. It is 
more comfortable in use than it 
would appear and it was very 
clunky. Tne clunks are noisy 
but they do sound METAL. A 
couple of people who have 
seen it have also liked it and 
commented on how strong it 
was. This is another one that I 
tried to break. I succeeded in 
smashing my knuckles against 
the computer console and that 
was the only damage. It seems a 
little expensive but it is so well 
made that the cost seems 
justified. The fire button is on 
the base of the stick and is a 
little difficult to use if you are 
using it hand-held. My fingers 
would not quite reach up to the 
button but if you fix the stick 
down there is no problem. The 
coffee and cream colouring 
look nice and blend in well 
with my bruised knuckles. 

Cheetah 

Well then, that's the lot. 
You may have made up your 
mind as to which you would 
like. I have. If I was going down 
to buy a stick today and could 
choose any of these I think I 
would go for the ZIPSTICK. It's 
a little on the pricey side but 
worth the extra. If my funds 
were limited then without any 
doubt I would choose the 
gruesome red and black 
monster that goes by the name 
of SUPERSTICK. I ask myself 
why but I don't know. It's just 
so strong. 

Before ending this article I 
should mention that a new type 
of stick has just been 
announced. At tne time of 
writing it was not available for 
the 64 out it's release should be 
only days away. It has been 
released for the Spectrum and 
from what I understand it has 
had rave reviews. You may 
have gathered that I am on 
about the new infra red joystick 
from Cheetah. No leads on this 
one just pure infra red light. It is 
supposed to have a wide angle 
of light spread so that when 
you and the joystick dive to the 
left to avoid that last Galaxion it 
should still respond. I am sure 
that this one will soon be 
reviewed in this magazine so if 
you are thinking of spending 
about £30.00 on a stick (I 
believe this will be about the 

trice) then this may be worth 
anging on for. I wonder if it 
will interfere with the video 
recorder remote control? 



E 



Submissions 




YOUR BEST INDEPENDENT COMMODORE MAGAZINE 



SO YOU OWN A COMMODORE? 



SO YOU'VE WRITTEN SOME PROGRAMS? 



SO WHY HAVEN'T YOU SUBMITTED THEM TO US? 



Your Commodore is always on the lookout for new 
material for publication and we know that there are 
thousands of intelligent, literate, innovative and 
creative Commodore owners out there, so why don't 
we get together? 

It you have written an exhilirating game or an 
invaluable utility on your Commodore micro, share 
your talents with us and our readers by submitting 
your efforts and the form to the address below. All 
articles should be documented and type-written and 
should be accompanied by a printout of the program 
as well as a copy of the program or\ cassette or disc. All 



publication, it wiil be returned to you. 

You may not have written any software yourself, 
but you have very firm opinions about the world of 
Commodore and all tneir attendant industries 
and products. Then put your opinions on paper and 
post them to us, again at the address below — you 
never know, you might even get paid for airing your 
views! All submissions should be sent to: 
The Editor 
Your Commodore 

Argus Specialist Publications Limited 
No 1 Golden Square 



44 



L 



★ PLEASE COMPLETE IN BLOCK CAPITALS 



Your Name 



Program Name 



Computer/memory size it runs on 



Amount o( memory program occupies 



Other computers/memory size which your program 
runs on without conversion or use 



Does your game need or use joysticks? 



Yes 



No 



Have you sent your game to another magazine 



Yes 



No 



Is it original/or a variation on a themef 



Your Address 



Telephone Number 
Times to contact you 



If an advertisement 
is wrong we're here 
to put it right. 



If you see an advertisement in the press, in print 
on posters or in the cinema which you find 
unacceptable, write to us at the address below. 



The Advertising Standards Authority. 

ASA Ltd. Dept 3 Br'ook House. Tomngcon Place. London WC1E7HN 



VIC-20/CBM-64 SOFTWARE HIRE 
FREE MEMBERSHIP!!! 

* A vast range of fine quality software 

* Prices from 60p per week 

* Comprehensive Membership book/catalogue 

* All tapes (guaranteed) originals 

* Free monthly newsletter 

Send 2 x 1 7p stamps for your Free Hirekit. Absolutely 
no obligations. Try us, you've nothing to lose! 

VSH (V), 242 Ransom Road, Mapperley, 
Nottingham, NG35H J 

N.B. Please state which machine 



COMPUTAPE'S DISCOUNT SOFTWARE 

Take a LOOK at our very competative prices and great variety in 
tapes from the leading software houses. Many more available. 

COMMODORE 64 BSP Our 

Price 

Aiaoian Nights Interceptor £7.00 £6 .80 

Asiro Chase Statesoft £8.96 £7 80 

Automama M.kro-Gen «■« « 80 

Beach Mead US Gold £9 96 £8 50 

Bear Bower Art* MM £6 90 

Black Haw* Cieative Sparks £7 96 £6 90 

Boulder Dash Statesoft £8 96 £7 80 

Bristles Siaiesol £8 96 £7 80 

Catacombs Anirog £7 96 £6 76 

Chuckie Egg A & f So«**» £7 90 £6 60 

Cuddly Cuban Interceptor £7 00 £6 90 

Cuthbert in Space Microdeal £8.00 (6 80 

Cybotron Anirog £7 96 £6 80 

Daley Thompsons Decathlon Ocean £7.90 £6 50 

Decathlon Activision £9 99 £8 70 

Encounters Novagen £9 96 f B 50 

Evil Dead (The, Palace £6 99 £5 90 

Fhp and Flop Statesoft £8 95 £7 76 

Football Manager Add.ctive Software £7 95 £6 50 

QIMgani Gold Ocean £6.90 £6.76 

GlugGlug CRL £7.95 £6 75 

Harera.ser Prelude Haresoft 18 95 £7 50 

House of Usher An.rog £6 95 £5 80 

Hulk' The A/lnternei-onal £9 95 £8 50 

Jack and the Beanstalk Thor £6 95 £5 80 

Mtcro Olympics DataBase £6.96 £4 80 

Monty Mole Gremlin Graph.cs £7 96 £6 70 

Myst.c Mansion U S Gold £8 96 £7 90 

Panic Interceptor £7 00 £6 BO 

Petch Anirog £6 95 £6 70 

Pitfall Acliv<sion £9.99 £8 70 

Potty Pigeon Gremlin Graphics £7 95 £6 80 

psyvon Beyond Software £7 70 fS 95 

QuoVadis Softek £9 95 £8 75 

Stunt B*e (The) Ocean £6.90 £5 75 

Tr#»hman Quicksih-a £7.96 £6.80 

Twin Kingdom Valley Bug Byte £9 60 £7 96 

Valhalla Legend £14.96 £1190 

Vorte* Raider Interceptor £7 00 £5 90 

2a«on US Gold £9.95 £8.60 



To order any of the above tapes, please write giving details of the 

games, enclosing a Cheque/ P.O. made payable to: 
COMPUTAPE and post to: Dept. Y128. 27 Coombe Road, 
Southminster. Essex CMO 7AH. (Tel: Maldon 772589). We also 
have lists available for the Spectrum. BBC. Deagon 32. One, 
Atari and Tandy Computers. Please send SAE for these lists. 




BRAINGAMES Amplicon Group BRAINGAMES Amplicon Group 

Richmond Road Brighton East Sussex BN2 3RL Richmond Road Brighton East Sussex BN2 3RL 

Tel: Brighton (0273) 608331 Telex: 877470 AMPCON G Tel: Bnghton (0273) 608331 Telex: 877470 AMPCON G 
Braifisames is a dtvison of Amplicon Micro Systems Limited Bramgames * a division of Amplicon Micro Systems limited 



SOFTWARE 




1 




m 



The DOCTOR 64 package is a 
diagnostic program for Your 
Commodore. Il bears a 
resemblance to a unit for 
servicing BBCs called a F.l.T. 
test board (FINAL INSPECTION 
TEST). It will not diagnose faults 
on a dead machine as it must be 
loaded in order to run but this 
aside it really is a useful 
program. I think that the 
people who would find most 
use for it aresmall retailers who 
have no full service depart- 
ment; this would enable them 
to check machines prior to sale. 
Also, 1 found identify faults that 
are due to operator error as 
opposed to a machine fault. 
The program is nicely 
packaged and, as usual with 
disc, loaded first time. You can 
then select which part of the 
machine you want to check or 
an autotest routine goes 
through selected checks and 
ends with a list of checks 
completed with a pass or fail 
mark. Pictures are used to 
illustrate the items you can 
have checked and when a 
particular item is checked it 
slowly sidles off to the side of 
the screen and then the screen 
clears to give you instructions 
to continue that particular 
part of the test. The 
scrolling pictures are not really 
necessary on a program of this 
type and seem to only have the 
purpose of prettying up the 
menu. In fact when you are 
going through a series of tests, 
the wait while the picture 
moves is an irritation. I will list 
the items that can be checked 
with a brief description of what 
each test does. ' 

KEYBOARD TEST 

As with the BBC FIT test this 
shows all the keys on the 
screen, and as you press each 
key the relevant key on the 
screen disappears. As 



Commodore keys are notor- 
ious for gunking up this small 
quick test will allow you to 
check most of the keys at once. 

JOYSTICK TEST 

When this is selected you are 
asked to select port 1 or 2. A 
graphic representation of 
possible joysticks movements 
appears as well as a circle to 
represent the fire button. As 
you move the stick or press the 
fire button a dot appears to 
show that a good signal has 
been received. I found this 
useful when doing joystick 
reviews as I could confirm that 
joysticks had failed as-opposed 
to the joystick port. 

RAM TEST 

This test checks all available 
RAM in order to identify faulty 
IC's. On screen all that is shown 
is a row of dots. As the test 
progresses the line of dots gets 
longer. This is another useful 
test as one faulty RAM IC may 
allow the computer to work 
OK unless that particular chip 
is called. Of course if the IC 
at the start of BASIC is duff 
then the program would not 
load in the first place. 

PRINTER TEST 

Understandably this routine 
will only check printers 
connected through the serial 



port. With such a wide variety 
of printers available it would be 
very hard if not impossible to 
write a routine to check printer 
function when it is connected 
through the user port. This is 
another test which I have used 
many times when asked to look 
at non — functioning systems. 

DISC TEST 

This is a similar routine to the 
one found on the Commodore 
test/demo disc when you buy a 
1541 disc drive. 

It does a read/write test to 
each part of the disc and checks 
for read/write errors. Another 
useful test: I did not find a way 
of checking my second drive 
which has a hardwire 
modification designating it as 
device ten as opposed to eight. 



VIDEO TEST 

More of a test card really. It 
simply shows a line of coloured 
bars and points out that this is a 
good time to adjust colour 
brightness etc. I tnink that a 
video fault would be apparent 
without this. 

SOUND TEST 

This displays a musical stave 
and plays a scale on each voice. 
The sounds are pretty 
gruesome notes and not very 
clean anyway. At first I thought 



maybe I had a duff SID or 
speaker coil but when I 
checked other 64s they 
sounded just as bad and so it 
must be trie program. 



CASSETTE TEST 

On the SX64 this is not relevant 
and when it is run the program 
drops out with an error. This is 
not really a fault in the program 
just a disadvantage with the 
SX64. If you run it with an 
ordinary 64 it performs a 
read/write test but if you did 
have a read fault then how did 
vou load this program? 



Other reviews for 64 
Doctor have questioned the 
value of a program that must be 
loaded and run in order to see 
if a machine is sick or not. As I 
have said before this IS a valid 
workshop tool and useful at 
home. It is not something that 
you would use very often but is 
reassuring if, for instance, your 
joystick does not work and you 
wonder if the last time you 
unplugged it with the power 
on maybe you did mess up the 
port (I plead guilty to doing 
that more than once) 

One of these would be 
useful in a retail outlet as well as 
a club or school. It is the only 
one of its type I have seen for 
the 64 and what it does 
it does well. 

D.C. 



Software reviews 



Zim Sala Bim 

* * ★ * 
Melbourne House 
£9.95 
CBM 64 

I'M NO REAL ADVENTURER 
but I know enough to 
recognise that Zim Sala Bim is 
full of promise, eastern 
promise to be exact. And an 
adventure with arcade style 
graphics and scrolling screens 
into the bargain all accom- 
panied by highly atmospheric 
Arabian music. So to the 
storyline. Your village has been 
savagely raided by the Sultan, 
all the money has been stolen 
and it is on the verge of 
starvation. You are the only 



able bodied man left and you 
have been chosen to break into 
the Sultan's palace and 
recapture the hoard of cash. 
The trouble is that if you break 
into the palace unprepared, 
the Sultan s guards might catch 
you and sling you in the 
dungeon. But then, wandering 
in the desert has its dangers 
too. However, the fact that you 
can actually move around each 
location means that some of 
the objects to assist you in your 
task can be easily found. 
Others are hidden and have 
to be discovered. You will 
need all the help you can get 
particularly if you are to avoid 
the stench of rotting food in 
the dungeon. But please, don't 
let that put you off. K.M. 



Football Manager 
* * * * * 




SO YOU FANCY YOURSELF AS 
a Lawrie McMenemy do you? 
Totally devoid of a footballing 
background and yet the 
manager of a successful first 
division football club? Well 
here's your chance. But watch 
out because it's a game 
addictive by name and 



Fame Quest 

* 

Brain Games 

£7.95 (casselte)/£9.9S (disc) 
CBM 64 



THIS, SAYS THE COPIOUS 
instructions, is an olde worlde 
game and by golly it shows. 
And just in case you were 
wondering, it has absolutely 
zip to do with the dancing 
sopranos in the TV programme 
of a similar name. It is set in the 



I days when demons, dragons 
and knaves still roam free and 
an aspiring young knight must 
[win fame and fortune before 
being accepted into the royal 
rourt. To meet the necessary 
'requirements a knight must 
journey from one royal castle 
to another gaining fame in 
battle and enough gold on the 
way. Fortunately he has a 
certain amount of gold to start 
with, enough to buy some 
weapons to see him through 
the initial encounters on the 
journey. To add to the 
excitement (yawn), the screen 
is split into five extremely static 
boxes, the most exciting of 
which is a map of the player's 
position. Oh dear, what a bore. 

K.M. 





CBM 64 



addictive by nature. Now it may 
be a game you are already 
familiar with because it's been 
around for some time on (dare 
I say it) the Spectrum but that 
doesn't mean to say that it is a 
bit of second-hand tut. Far 
from it. In fact it is one of those 
games that is worth its weight in 
gold. The object of the game is 
simple: to take over a club at 
the bottom of the fourth 
division and with skill and 
dexterity to take it to the top of 
division one through a series of 
league and FA Cup matches. 
There's a chance to dabble 
in the transfer market to 
improve your team's skill and 
even borrow cash from the 
bank to keep your club afloat! 
Each player has a skill factor 
and energy reserves which 
become depleted the more he 



plays. Players also become 
unavailable for selection 
because they are injured. Once 
you have picked your team, the 
computer plays out the 
matches before your very eyes. 
Shock results can unset the 
odds and the team morale 
factor varies according to the 
success of the team. But don't 
get too flush with a run of 
success. The managerial seat is 
not all that secure and a few 
bad games could get you the 
sack. Move over Subutteo 
because here comes a game 
that is going to glue you to that 
screen. K.M. 




JUST AMAZING ISN'T IT, THE NUMBER 
of maze games there are around these 
days? So what's one more amongst friends 
you might well ask? But before you get 
too despondent, it's worth noting that 
Fred still has something to offer the genre. 
Fred is stuck underground and desperate 



to get out. The only problem is that he's 
got to find the bomb and various other 
artefacts and detonate them on the 
outside without blowing himself up 
before he can pass on to the next level. 
Naturally there are traditional nasties 
wandering around the maze determined 
to put a spanner in the works. Sounds 
even more like you've heard it all before, 
doesn't it? Well, not quite, because the 
graphics are exceptionally good and Fred 
is a master of a rope climbing act. Whilst in 
the maze Fred's strength is sapped as the 



nasties catch him and drops of acid rain 
fall on him from the roof of the caverns. 
But it is not a one-sided affair. Fred has a 
gun and six bullets which are 
replenishable with which to repel the 
nasties and hisstrength can be restored by 
finding the magic elixir. All there is left to 
do is find your way out of the maze ... and 
with a horizontally and vertically scrolling 
screen, it is not as easy as it sounds. What's 
more, the higher the skill level you 
choose, the more difficult it is. 

K.M. 



E 



7 



I! 



SOFTWARE 




4 




YOU WAKE UP IN THE 
lounge of a waxworks and, as 
the words say on the package ... 
in such macabre surroundings 
dreams end and nightmares 
begin ... Well the only 
nightmares I'll have will be 
trying to figure this infernal 



what words to use. Lack of 
communication is very evident, 
it may just be me or this game 
reflects the feelings of the 
waxworks — dark and 
forboding! 

The program itself isn't in 
the same category as the 
infamous Zork series but it is a 
nice try. The graphics aren't as 
good as the Dallas Quest 
(which is on disc only) but the 
software company does have 
an intriguing fill command. If 
you are wondering why 




plot, that is because they do not 
mention one! It's up to you to 
explore the waxworks and 
earn by your mistakes. So in 



;ame out. It's not that it's 

lifficult but the problem is haven't said anything about the my opinion (I've been spoilt) it 



is a standard adventu 
standard graphics, but 
try and solve it just to 
mind at ease. 



re with 
I'll still 
put my 

S.L.F.P. 




tz 



SOMEHOW I GET THE IMPRESSION 
that this might be a little conservation 
orientated. Not only do you learn about 
the evolution of a life commonly known 
as the frog, but it also gives hints about 
nuclear waste and on the higher levels 
you will find mutant creatures ready to kill 
you if you don't kill them. 

The idea of the game is evolution: 
breed as many frogs as possible 
before ending up as some creature's 
dinner. As it says in the booklet that 
comes with it "How else can we continue 
to play frog games, after all they have to 
breed somewhere". This is true! 

The game opens with you hatching asa 
frog spawn feeling very hungry, so you eat 
the pink amoeba and the eggs which the 
dragonfly drops into the water. If the 
eggs aren't eaten they hatch and eat you. 

To evolve takes a tittle while, because 
you have to consume five worms to go 
onto the next stage of development. 
Other hazards include jelly fish, hydra, 
spiders and nuclear waste which has been 
dumped in the pond. Even if you do die I 
think you will still want to start again and 
discover the birds and the bees about 
frogs! S.LF.P. 



New York Blitz 

* * 

Mastertronic 
£1.99 

VIC 20 Optional Joystick 



I LOOKED AT THIS GAME THINKING 
have Mastertronic brought out a new 
original game at the cheap price of £1.99? 
Alas not, this is yet another copy of Blitz or 
the similarly named City Bomber. If you 
have nevef played this sort of game the 
basic aim is to flatten the city in order to 
land your aircraft which is running out of 
fuel. Once loaded, which it does with 
ease, you can begin. The aircraft moves 
across the screen, gradually decreasing in 
height. To bomb, press any key (you can't 
make a mistake as any key will do} or press 
the fire button on the joystick control. 
Surprisingly one bomb will destroy a 
whole sky-scraper; this makes it a very 
simple game and I went through the cities 
with apparent ease. Cities to destroy 
include Baltimore, Seattle and, of course. 
New York. Once destroyed your aircraft 
lands automatically. The graphics are one 
character and the skyscrapers look like 
ice-cube containers. The sound leaves a 
lot to be desired. The only good point in 
this game's favour is the price. At £1.99 it 
must be the cheapest bomber /blitz game 
around but as the old saying goes, 'Cheap 
and Nasty'. 

P. WW 




Software reviews 



i 



Kaiah 

* * * * 
Talent Software 
£7.95 (cassette)/£9.95 (disc) 

CBM 64 



IT'S DONE IT AGAIN! THE 
machine has got it in (or me. 
Every time I come up with a 
good move it comes up with a 
better one. Mind you, I have 
only been playing this game 
for an hour. 



frustrating one at that) It is. 
apparently, a very old game 
which was played in deserts by 
people with nothing better to 
do. Let me explain this gem of a 
game from Talent Software. 
The game consists of a board 
with 14 holes in it. You own 7 
holes and so does the 
computer. 6 of the 7 holes are 
in front of you and the same for 
the CPU, trie seventh is to your 
right (called the Kalah). 



more than half the pebbles Mike Masters who designed 
which are placed in the holes the graphics. They deserve a 
by moving them round the round of applause for the total 
board anitclockwise. If you are package as it is very good 
confused at this point, wait indeed. S.L.F.P. 
until you play the game. The 
rules take a Hide getting used to 
but after a few games it 
becomes clear that this is a 
definite strategy game. 

I think I should mention the 
two people involved in making 
this. They are Andrew Collins 
who wrote the oro&ram and 



Revelation 

★ ★ * 

Softek 

£7.95 

CBM 64 + J oystick 

IT IS AN OKICINALISH' 
game, but it doesn't quite get 
lo be called totally and 
absolutely original. In basic 
terms it is a shoot 'em up game 
with quite a large difference. 
Not only do you kill all the evil 
monsters but you have to 



destroy castles which, in turn, 
reveal a pentacle sign. Once 
you have revealed all the 
pentacles there is a brief blue 
flash telling you thai you can 
now kill the last of the monsters 
and escape cavern number 
one. 

Apparently in this game 
there are 31 monsters all on (he 
40 different levels. They serve 
the same purpose in life: to kill 
you before you get to the last 
screen and stop the monster of 



Apocalypse from being 
crowned. That basically is what 
the game is about and I must 
say that it would be OK if it 
didn't take so long to play one 
cavern. 

The graphics are fine, 
except for the flashing of my 
character (and all the others), 
when there is more than a 
certain amount on the screen. 
This could either be the 
machine's limitations of eight 
sprites on the screen at once or 




the program's limitations in 
using soft sprites. Overall, it is 
possible but as I said before, a 
ittle faster please on the early 
evels and is it music in the 
background or has a dragon 
got indegestion? S.L.F.P. 




THIS IS A PARTIAL GRAPHICS 
adventure which operates in 
real lime. In other words you 
could be deciding whether to 
shoot someone or not and they 
could decide that they would 
rather not have you around. 
The game West puts you in the 
position of being a low 
enforcer on the trail of a gang 
of mean robbers. It's your job 
to kill them and get promoted 
to Marshall. These nasty 
reprobates are hiding out in 
and around an old mining town 
which is now a ghost town; 
hidden somewhere is a large 
amount of loot. 

The software company 
claims that there are between 
two and three hundred words 
that the computer will 
understand. Unfortunately I 
couldn't check that because I 
kept on being shot or bitten by 
a rattlesnake. It does have 
graphics, but only in 
certain places. The graphics are 
again very good. I say 'again' 
because the two other games 
by Talent have outstanding 
presentations. 

S.L.F.P. 



HAVE YOU EVERTRIEDTOFLY 
the latest in space defence craft 
from the Federal Inter Starbase 
Patrol Force (FISPF)? I have and 
it's exceptionally difficult and 
dangerous. Supersoft have 
generated a different type of 
flight simulator. Whereas with 
most simulators a small manual 
is provided, Supersoft have 
gone all the way in producinga 
47 page flying handbook with 
everything in it except how to 
make the coffee! 

The game opens with you 
enrolling as a Sub-Lieutenant 
in the FISPF. You are then 
transported to your craft 
waiting at one of tne hangars. 
You have the choice of either 
going out into space or just 
running the inbuilt simulator to 
learn now to handle the 
Interdictor Mark III. It's one of 
those games that will take a lot 
of playing to get used to and 
reap the best from it as a 
simulator. 

The onlydrawback with this 
game is that it is auite slow and 
occasionally death came 
painfully slow indeed. 



SIPERSOFT 




Election Trail 



* * 

Brain Games 

£7.95 (cassette) £9.95 (disc) 
CBM 64 

YES FOLKS, IT'S ELECTION 
time again in the jolly old US of 
A and Wally Mondieu is busily 
beating a path to Rodeo 
Ronnie's door. Election Trail is 
here to help you indulge in all 
the fun of the fair in the 
comfort of your own home. It's 
a one or two player game. If the 
one player option is chosen, 
the computer plays the 
Democratic party. The object 
of the game is simply to win the 
Presidential election and you 



do this by winning the most 
states in each of the four 
regions. At each turn you are 
invited to do one of four 
things: hold a rally, go on a 
campaign tour, hold a press 
conference or hold a public 
meeting, each of which 
depletes your cash-rich coffers. 
You then get the opportunity 
to either raise more cash, take a 
rest, look at the opinion polls 
or seek an endorsement. At 
the end of 20 turns, the whole 
cotton -picki ng roadshow 
grinds to a halt and the states 
are carved up between the reds 
and the blues. Although there 
is an element of strategy to the 
whole thing the degree of 
dependence on the computer 



ite higr 



k.M. 



SOFTWARE 



Flight Zero-One-Five 

* * * * 
AVS 

£5.95 
VIC 20 



AT LAST A FLIGHT SIMU- 
lator for the unexpanded Vic 
owner. Is this a miracle I ask 
myself? Yes, but it is less 
complicated than other games 
available for the expanded VIC 
20 but just right for a 
beginner. The insert gives very 
good instructions on how to 
take off, cruise, descend and 
land. Once loaded, which it 
does without difficulty, press F5 
to start the engines, hold F5 to 
start to taxi down the runway 
and with a minimumof 390revs 
you're ready to take off. Press 
F3, your brakes areoff and your 
airspeed builds up. Press and 
hold < (nose up): You're now 
cruising through the air. You 
do suffer from random 
turbulence from time to time 
and have to correct your 
course. Descent and landing 
need to be thought about: 
check your airspeed and lower 
your undercarriage to get your 
nose down. Press < : if you're 




lucky you should land; I 
suggest you shut your eyes and 
pray. Your flight time is usually 
about 7 minutes although the 
insert quotes 5 minutes. I 
couldn't find any bugs. The 
graphics are limited but the 
sound is quite good; when you 
rev the sound pitch increases. 
Overall it is a very good flight 
simulation ana the pro- 
grammer has my congrat- 
ulations for getting it into 35K. 
Well done. 

P.W.W. 




ACTIVISION WERE A GAMES 
manufacturer for Atari's game 
Console. So what? I hear you 
ask. Well, the good thing about 
this company making software 
for the CBM 64 is that they are 
producing very good quality 
products. H.E.R.O. is a prime 
example of what they can do. 

It is original, fast and has 
very good quality graphics. 
Some miners have been trap- 
ped down a mine shaft and it's 
your job to be a 'Hero' and save 
them. Sounds easy and it is for a 
couple of levels. Whilst 
traversing the mine shaft you 
will have to blow up walls and 
shoot creatures. To blow up a 
wall you'll need dynamite: you 
are supplied with six sticks, so 
use them wisely and don't 
stand too close. To make life 
easier you have a jetpack which 
enables you to ascend and 



descend with grace and care as 
the tunnels go in all directions. 
Once you have saved the 
miner, level two starts, 
exposing a little more of the 
mine shaft and a few more 
obstacles to get over. Good 
examples are the lava walls and 
lava flows: if you walk or land 
on these obstacles you lose a 
life. 

5.L.F.P. 




HELICOPTER GAMES ARE FEW 
and far between and this one 
from AVS is the first I have seen 
for the VIC. The game loads 
very easily. To take off press F1 



but do wait until the rotor 
blades of the helicopter are at 
full speed before take off. 
Using the keys Q A O P your 
first assignment is to blast 
rockets which appear 
horizontally across the screen. 
Once you have achieved this 
the second screen appears. On 
this screen you are on a small 
base station which moves from 
eft to right. Your assignment is 
to shoot down approaching 
objects. Your fuel is increased 
by 10 points for each success 
you have. Once the maximum 
target of 300 points has been 
reached you can then take off 
in your helicopter Your base 
station has to be destroyed. 
Once airbourne fly directly 
over the base and then drop 
your load; you then return to 
screen one. Sound easy; don't 
you believe it, it took me five or 
six goes to get it right. The 
graphics on this game are quite 
good as are the choice of 
colours. I also like the little 
touches which help to make it 
more interesting; a good title 
page and good sound. 

P.W.W. 



Software reviews 




AT FIRST GLANCE IT IS NOT 
easy to tell what this package 
does. The picture on the pack 
indicates a game, the wording 
indicates a language and the 
company name suggests it may 
be a word processor. There is 
almost nothing on the packing 
to indicate that it is a BASIC 
compiler. A compiler is a 
program which converts a 
program into another form to 
increase speed and efficiency. 
In all machines that run in 
anything other than machine 
code an interpreter has to be 
present to convert the program 
that has been entered into a 
form that the processor can 
understand. This conversion 
and checking takes time and 
can slow a program down so 




much that it crawls. Compilers 
turn a program into a form that 
is faster, closer to the object 
code, and in some cases have 
additional features to pass by 
bugs or poor routines in the 
original machine. In the case of 
the Commodore it fixes the 
dreaded garbage collect 
routine, though more on that 
later. 

Jet pack does all these things 
and is 100% compatible with 
BASIC 2.0; this means that you 
can compile any of your BASIC 
programs without modifi- 
cations, with some machines it 
is not possible to compile 
without rewriting certain parts. 
Another great feature of 
letpack is that if you use 
machine code routines loaded 
from within a program that is 
OK. In some cases it is 
necessary to POKE a couple of 
locations to do this but the 
procedure is so well described 



in the documentation that it is 
very very easy. 

The program for disc 
based Commodore 64s 
comes with a dongle to fit into 
the joystick port or cassette 
port; in case you haven't seen a 
dongle before it is a small piece 
of simple circuitry encased in a 
lump of plastic about 2" x 1.25" 
with a plug on. This will only 
allow the program to operate 
when the dongle is present. 
Backup copies of the compiler 
are easily made but without the 
dongle they will not run. I use 
an SX-64 and while I was 
carrying my SX around I lost my 
dongle from the joystick port. 
My compiler will not run now, 
but as it is such a useful 
program another must be 
obtained. If you have a tape 
based Commodore Wthereisa 
tape version. Unlike the disc 
version there are limitations to 
the size of the program you can 
compile (12K) as the compiler 
cannot lay onto tape, in a 
temporary file, parts of the 
compiled program. The price 
of the tape version though is so 
low that i( would still be an 
excellent buy. 

When you load a compiled 



be automatically changed to 
ease transportation of 
programs from one machine to 
another. Because of time 
available I have not been able 
to investigate this function so I 
hesitate to comment. Claims 
are made that some programs 
will run up to 25 times faster 
than in standard BASIC but 
most programs will achieve 
only 5 to 15 times speed 
increase. This however is still a 
lot faster and in the majority of 
cases I did notice a very definite 
increase. I use a lot of 
subroutines to format figures 
and the delay between input, 
format and printing to the 
screen was considerably less. 

For me the most impressive 
feature was the Jetpack 
Garbage Collect. I have one 
piece of software that uses 



Commodore collect routine 
has been a nuisance to you 
then Jetpack is an excellent 
buy just to stop hangups. 

To finish then I found DTL 
BASIC to be excellent. Unlike 
some compilers it is 100% 
compatible with BASIC and it 
will also run on the SX-64. The 
documentation is more than 
adequate and well written and 
is I think my most often used 
utility program. I now compile 
all my BASIC programs if only 
to make them unlisiable 
(another benefit). One 
important point is that 
although the dongle is needed 
to compile a program it is not 
required to RUN a compiled 
program so you can still give 
copies of compiled software 
away. Unlike some compiler 
producers, Dataview have 
adopted a very mature attitude 



program it is necessary also to 
nave a set of routines in 
memory which are called the 
runtime library. These are 
loaded automatically if they are 
not in RAM. They do not use 
much RAM at all and they are 
in a part of RAM not often 
used. Machine code routines 
that I use such as Centronics 
Interface Software do not 
conflict with the RTL. Chaining 
of compiled and uncompiled 
programs is possible and easy 
and it is possible to retain 
variable values and transfer 
them from program to 
program. 

If you use non-BASIC 
commands called extensions 
which are defined within the 
program it will still compile. 
Warnings are given that a non- 
standard command has been 
found but provided it is a 
genuine extension then the 
compilation process and the 
end result will still run. Special 
extensions to BASIC in the 
compiler allow for faster sprite 
movement which does indeed 
work well and a routine also 
allows PEEK/POKE addresses to 




almost the whole of BASIC 
RAM as one large string array. 
When the Commodore 
performs its infamous collect 
routine I have watched the 
machine hang up for 15 to 20 
minutes while it sorts out the 
rubbish. When compiled it did 
still hang up but for less than a 
second. It is now a great joy to 
watch it hang up and burst back 
into life so quickly. If the 



to using the compiler with 
software that you want to 
market. If you sell copies of 
your compiled programs 
simply credit Dataview and 
t hats all OK. A shame others do 
not think like that. Just out of 
interest, below is the memory 
map to show areas used by th 
compiler (addresses in hex). 



$0000-50800 


As per interpreter 


$0800-$9FFF 


Compiled programs and 




variable list array 


$A00O-$BFFF 


Run time lib. 


£C00O-$CFFF 


Unused 


$D00O-$FFFF 


Garbage collect D.C 



SOFTWARE 






WRITTEN BY THE SAME GENTLEMAN 
who concocted Flip & Flop, Fernando 
Herrera has done it again. This game is 
about trying to save Earth, I say this 
because it is very trying, and you always 
lose in the end. Apart from that it is very 
good. The graphics with the cartoon 
intermissions and the 1812 overture are 
just right. 

However, it lacks a little of the 'umph' 
thai Flip & Flop had. The game consists of 
stopping megamines from hitting earth 
and killing as many Megadarian ships as 
possible whilst keeping yourself alive," 
simple enough! After two 'chase' 
sequences I didn't have any saucers left, 
end of game for me. 

You do get shields which deplete your 
power, along with losers. At the edge of 
the galaxy there are power points from 
which you can replenish your weakening 
strength but be careful because a 
megamine might scatter the earth over a 
vast distance whilst you are performing 
this minor task. Eight different 
Megadarian fighters can be encountered 
on the 34 levels, of which you can select 
up to level 23. 

The cartoons are worth watching 
because as you progress your man is 
welcomed home in different ways. It's a 
good game but I did find it easy to switch 
off and play something else. 

S.L.F.P. 



Psycho Shopper 

* * * 
Masterlronic 

£1.99 . . 

VIC 20 8K RAM Optional 

Joystick 



YOU ONLY HAVE A SMALL AMOUNT OF 
time to get to the supermarket! Can you 
make it in time? Will you be bashed bv an 
old Cranny? These are the sort of prob- 
lems you encounter in this new Master- 
tronic game. You are a disorientated 
shopper heading for the supermarket, 
collecting gold coins on the way. 
Grannies plav a big part in 
making your life difficult. On the 



bumping into a mad granny or any other 
obstacle you are confronted with. On the 
second screen you arrive at the main road 
which you must cross avoiding the vans, 
cars and yet more grannies. I can guess 
what you are thinking, yet another 
version of Frogger. You're right, but this is 
more addictive. The third screen presents 
railway lines and trains. On arrival at 
screen four, grab your shopping trolley 
and off you go around a maze avoiding of 
course yet more grannies. Once you 
achieve this you're back to screen one. 
The graphics on this game are reasonable 
and the sound gives it added life. It loaded 
very easily first time and it has a good title 
page. At £1.99 it is very good value for 
money and a game not to be missed by 
any VIC owner. 



Forest of doom 
* * * 
Puffin Books 
CBM 64 



LIKE THE HOBBIT FOR THE 64 THE 
Forest of Doom by Puffin is supplied with 
a book. It is worth remembering that this 
game is based on a book written by Ian 
Livingstone who is at the forefront of 
Dungeons. & Dragons. This is an 
adventure game based around the basic 
rules of D & D. Once loaded you are 
confronted by a high resolution screen 
showing a decidedly suspicious forest. 

I immediately thought that it was 
going to be a high quality graphics 
adventure. I was wrong at least up to the 
point I reached. 

Let me explain the principles behind 
the game and what your tasks are. The 



theory is that after rolling some dice 
(kindly provided by the computer), you 
build up your character's abilities. The 
higher the dice roll the better. Anyway, 
once your character has its qualities you 
then get a long briefing of what has 
happened in the world which you are 
now a resident. 

The plot goes something like this — 
you are a warrior of great reputation. One 
sunny day you just happen to be near a 
spot where this dwarf says his final words. 
In desparation and half madness he tells 
you of the four runes which have been 
stolen and mislaid in the Forest of Doom. 
He then expires and you decide to get the 
runes back because there mignt be 
something in it for you. From thence your 
struggle begins and even if you are short 
and clever or built like an ox (thick as one 
as well) you'll have some great fun. 

S.L.F.P. 



52 



Archipelago 



* * 

Talent Software 

£7.95 <cassette)/£9.95 (disc) 
CBM 64 + Joystick 

I DON'T NORMALLY LIKE WAITING 14 
minutes for a program to load, but since I 
had already played Kalah by Talent for the 
64 and was greatly impressed, I went and 
made mvself a coffee and got ready to 



IV! . 

play Archipelago. 



After reading the instructions which 
described Archipelago as a type of maze 
game, I started to have doubts. There 
have, in the past, been too many maze 
games and an addition to the very long 
call would make it just one more name on 
a never ending list. This would have to be 
very good to make it stand out above the 
rest. 

The idea is to collect the mysterious 
jewels from a maze so that you can escape 
the maze and inevitably go on to 



progressively harder levels. As usual 
there are guardians who for some 
unknown reason want your blood. 

Once loaded, the title screen and then 
the high score table are displayed. Then a 
rather nice animation of a storm battered 
island with a man running into a cave is 
initiated finally leading to the game. 

As a conclusion I am tempted to say 
'Nice presentation, shame about the 
game', but I won't. 

S.L.F.P. 




Software reviews 



JUDGING FROM THE BLUR8 
on the cassette insert, t thought 
this was going to be a pretty 
naff game. But how wrong you 
can be! Surely it wasn't me who 



was going to be a tinge tedious? 
Percy, of course, is no ordinary, 
run-of-the-mill potty pigeon. 
He is downright suicidal. The 
object of the game is to control 
old Percy in flight and to swoop 
down on to the road to pick up 
all the nest building twigs he 
needs to pass on to the next 
level. There are points for every 
twig taken back to the nest. 
Naturally, it is not as easy as all 



flight and almost totally 
uncontrollable. But that's not 
all. There are obstacles to avoid 
such as the passing cars on the 
road intent on turning Percy 
into strawberry jam and a 
variety of other nasties like the 
pigeon eating cat, the starving 
ferret, kamikaze planes, 
balloons and twig snatching 
sparrows. But Percy is not 
totally heloless. He has more 



under his wing in the shape of 
some revolting, exploding 
eggs. Points are gaine for 
splattering the passing cars, 
killing the cat, destroying the 
flying ducks (Rood enough to 
grace any wall) and gobbling 
up the butterflies. So, once 
again, who said nest building 
isn't fun? Certainly not 
loveable little Percy, the star of 
this nifty little game. 

K.M. 




0 colore 



1 




St * • * 



Flip & Flop 

* * * * * 
Stale Soft 

(0 QC 

CBM 64 + loystick(s) (Cassette] 
based) 



WHAT HAVE FERNANDO 
Herrera; a monkey called 



Mitch and a Kangaroo called 
Flip got in common? Well, 
Fernando wrote a game which 
includes these two characters 
in a very weird setting! Mitch & 
Flip have found that they can 
escape from the Zoo by 
completing a maze. The 
problem is it's in 3-D and after 
playing for a long time, 
insomnia sets in your eyes 
start to water! Anyway, by 
traversing the squares of this 
maze and flipping special 
boxes placed at random on the 
board, you gain points and 
your freedom. 

The first couple of levels are 
dead easy once you get used to 
the joystick controls, the best 
results being achieved by 
holding it like a diamond (fire 
button pointing at the T.V.), 



but then the fun starts. The 
levels are made harder with the 
entry of the zookeeper on 
level 3 and a magic flying net on 
level 4. As the game progresses 
the maze gets larger as you 
complete each level. Cartoon 
intermissions have been 
included after every 5 levels of 
play as a reward for being very 
agile. 

The game is superb with 
very good graphics and sound. 
Oh yes, when you play as Mitch 
the Monkey the board turns 
over and you swing from 
square to square! Not that easy 
this one and it's well worth the 
money. Watch out for the 
sticky squares, they can be 
dangerous or very useful as 
well. 

S.LF.P. 



Traffic 

★ ★ 

Quicksilva 

£7.95 

CBM 64 + Joystick 



THE STREETS OF LONDON ARE ABOUT 
to descend into complete chaos. Only 
you have the power to prevent it. Vou are 
in complete control of the traffic lights at 
each or the capital's major road junctions 
and it is their skilful management which 
will stop the massive queues of vehicles 
from building up. With traffic entering 
from all sides of the screen and no way of 
telling whether it will turn right, left or 
simply go straight ahead at a junction, 
congestion seems almost inevitable and 
actually keeping the traffic flowing is 
more than a little difficult. So if you 
impress your superiors there is a chance 
of stepping up the promotional ladder 
and sorting out more congested areas. 
This, of course, means different screens 
and more difficult junction layouts. If you 
fail, well there is always the chance to start 
all over again providing you're a sucker 
for punishment because there seems to 
be very little method to all this madness. 

K.M. 



Daley Thompson's Decathlon] 
* * * * 

Ocean 
£7.90 

CBM + Joystick 



MAKE SURE YOU HAVE A METAL 
joystick forthis game or it will cost a lot of 
money in new ones. This is a good 
reproduction of thearcade athletics game 
except that there isn't any voice synthesis. 
In this game you have to complete the ten 
events in which Daley Thompson 
competed in the Olympics. 

Trie graphics on this game are very 
good with excellent use of sprites for both 
Daley and the Computer (your 
challenger). Throughout the ten events 
your scores are registered, the world 
record is displayed and the crowd cheers 
whether you win or lose. My comment 
about the joystick referred to the way you 
make Daley run. This is accomplished by a 
side to side motion of the joystick: the 
faster you move it, the faster he runs. The 
fire button is also used to make him jump 
and throw. 

I did enjoy this game immensely but 
when I jumped or threw something, my 
man always fouled or fell over. It's worth 




playing but I do miss the voice at the 
beginning. S.LF.P. 



This utility from Mike 
Hart should help you 
format numbers 




MANY ROUTINES HAVE BEEN 
published in the past to 
provide a way of 'formatting' 
numerical data so that the data 
is rounded to the specified 
number of decimals and to 
ensure that the decimal points 
line up when the data is printed 
in a column. Many of these 
routines are very long and 
tortuous and may slow the 
system down considerably if 
there are a lot of numbers to 
process. I therefore decided to 
write a routine (in BASIC) 
which would be as short and as 
economical as possible, which 
would approximate to the 
speed of machine code 
routines and which would 
format fully even 'difficult' 
numbers such as those 
expressed in exponential 
mode. 

In particular, the routine 
needed to: 

— round both positive and 
negative numbers correctly 
avoiding the errors that are 
occasionally introduced when 
the CBM arithmetic function 
processes certain numbers ( 
e.g. try to round 812.676144 by 
using the INT(X*1000+0.5)/ 
1000 approach!) 

— process numbers less than 
±0.01 which would otherwise 
be expressed in exponential 
mode 

— put in leading zeroes for 
values between ±1 and -1 e.g. 
to ensure that .7 is expressed as 
0.7 

— add a fractional part of 
trailing zeroes to ensure 
consistency so that to three 
decimal places 2.3 will be 
expressed as 2.300 and that 2 
will be expressed as 2.000 for 
example. 



54 e 



he routine presented here is 
effectively contained in three 
lines i.e. lines 3-5 and assumes 
hat whatever number one 
wishes to process has been 
copied into the variable Z. The 
other variables associated with 
the formatting subroutine all 
start with Z so that the 



PRINT USING ON 
THE 64 




programmer can avoid 
contaminating the rest of the 
program. Line 1 sets up certain 
default values but these may be 
changed in the course of the 
program if desired. The 
demonstration is set up with 
three decimal places (Z3), a 
rounding factor of 1000 (Z4) 
and a 'field-length' of 9 (Z2). 
The string of padding blanks 
(Z1$) can always be made 
longer if desired and obviously 
the GOTO at the end of line 1 
points to the normal start of the 
program. Notice particularly 
that Z4, the rounding factor, is 
specified exactly — if you 
attempt a short-cut such as 
Z4=10tZ3 then the result may 
be internally stored in a slightly 
inaccurate form and this may 
introduce errors later on. This 
is due to the fact that 
exponentiation involves 
manipulating the logarithm of 
a number and some loss of 
accuracy is potentially 
possible. A 'balancing factor' 
(Z6) is included to compensate 
ror occasional failures to 
round exactly. 

The internal construction 
of the program is as follows: 
Line 3. 

Makes a rounded string of the 
number multiplied by the 
rounding factor. Notice that 
this works just as well for 
negative as for positive 
numbers. The 'balancing 
factor' (Z6) is necessary due to 
the fact that the CBM 
interpreter does not force a 
round before performing INT 



and one has to correct this 
deficiency. The balancing 
factor is the smallest that trial- 
and-error has demonstrated to 
be effective for both positive 
and negative numbers. If you 
wish to demonstrate the 
presence of the INT bug for 
yourself then try the following: 

PRINT 123. 4555*1000+. 5, 
INT(123.4555*100O+.5) 

Both should give 123456 but 
the INT gives 123455 due to the 
bug. The presence of the 
'balancing factor' enables 
numbers such as 123.4555 and 
-123.4555 to round correctly to 
123.456 and -123.456 respect- 
ively. If you do not mind the 
occasional inaccuracy caused 
by the failure to round up then 
you can cut out the reference 
to Z6 in Line 1 and the whole of 
the term Z6*SGN(Z) in Line 3. 
This also has the by-product of 
speeding up the whole sub- 
routine by some 10% but 
personally I would rather 
sacrifice a little bit of speed for 
complete accuracy, (inciden- 
tally, the PRINT USING routine 
in the COMMAND-0 chip will 
fail to round a negative 
number such as -123.4555 to 
three decimal places cor- 
rectly!) 
Line 4. 

Is only called into play for 
numbers (positive or negative) 
that are less than 1 and require 
a leading zero to be inserted. 
The effect of line 4 is to turn, 
for example, -.123 into -0.123 or 
7E-03 into 0.007. Numbers that 



would normally be expressed 
in scientific notation get 
turned into 'normal' numbers 
by this line but a similar 
technique is not used for very 
large numbers which generally 
constitute less of a problem. 
Line 5; 

This line is one of the most 
critical in the whole 
subroutine. If we assume that a 
Z of 123.4555 has been 
converted to the string Z$ of 
123456 (in line 3) then this line 
inserts the decimal point in the 
correct place, pads to the left 
with blank spaces and prints 
out the result (leaving the 
cursor on the same line) before 
RETURNing. It is obviously 
necessary that integers avoid 
this line altogether and that is 
why they are taken care of by 
the conditional statement at 
the end of line 3. 

How fast? 

Given that care has been taken 
to ensure that the routine is as 
accurate as possible, how does 
it compare with machine- 
code routines for speed? In 
order to make meaningful 
comparisons, I undertook 
some trials in which I 
compared this BASIC PRINT 
USING with (a) the COM 
-0 chip PRINT USING in 
a BASIC4 4032 PET (b) the 
PRINT USING routine given by 
Raeto West in 'Programming 
the PET/CBM'. The results are 
summarised in the table 
below: 



PROGRAM 


MACHINE 


AVERAGE TIME 


NOS. PER SECOND 


BASIC PRINT USING 


C-64 


0.0540 


18.5 


WEST PRINT USING 


C-64 


0.0411 


24.3 


BASIC PRINT USING 


4032 PET 


0.0518 


19.3 


WEST PRINT USING 


4032 PET 


0.0375 


26.7 


COMMAND-0 PRINT USING 


4032 PET 


0.0472 


21.2 



64 Utility 



The BASIC PRINT USING 
stands up pretty well to the 
machine code opposition! In 
the case of the WEST routine, 
the routine works by 
truncation and does not round 
at all (and you have to do this 
before the number is sent to 
the subroutine) nor will it 
attempt to process numbers 
expressed in exponential 
format (such as 1E-03J which 
severely limits its usefulness. As 
we have seen the COM- 
MANDS PRINT USING also 
has some deficiencies and will 
also make a mess of some 
exponential numbers e.g. 1E- 
03 which is 0.001 emerges as 
-03.000 to three decimal- 
places! All in all, the BASIC 
PRINT USING comes out well 
in the accuracy stakes and also 



accuracy stakes and also 
formats and prints at some 19 
numbers to the second which, 
as you can see, starts to get 
pretty close to the speed of the 
machine code routines in any 
case. 

Use of PRINT USING 

To incorporate this PRINT 
USING routine into your own 
programs it is best to type it in 
exactly as shown from lines 1-6 
(although lines 2 and 6 are only 
given colons to assist 
readability) i.e. the routine 
should be at the very start of 
the program. The reason for 
this is that line 1 defines 
variables at the very start of the 
program and when these 
values are called the internal 



routines do not have to search 
through other variables in 
order to find them. For the 
same reason, constants have 
been defined as variables as 
this, too, speeds up the entire 
subroutine. These techniques 
are applicable to other BASIC 
programs as well where speed 
is the essence. If you know that 
you are not going to require 
integers then you can cut out 
the whole of the conditional 
statement contained at the end 
of line 3 and this too will speed 
processing slightly. 

To call the subroutine 
merely copy whatever variable 
you wish formatting into Z and 
then call the subroutine with 
GOSUB 3. You may consider 
that this is a slightly messy way 
to do it — why not use a user- 



defined function instead? As 
you might have guessed the 
user-defined function takes 
quite a bit more time to 
process and therefore I chose 
the 'copy' method. 

If you wish to alter the 
number of decimal places in 
the course of the program then 
you need to alter the 
parameters of Z3 and Z4. To 
effect the change, make Z3 the 
number of aecimal places 
required and Z4 the relevant 
rounding factor. For example, 
to rounato two decimal places 
make Z3=2 and Z4 = 100 before 
the subroutine call. These 
values remain in effect until 
you change them again. 



Program listing 



BftSIC PRINT-USING 



>307"Z 1S=' 





1 2S* ll ~:2<>et23>3:Z8<>3!Z4>1000:Z3-.5iZ6*0. 

e ■ 

3 Z»-STR«( INTC2a24-Z5*Z6aSGN<2 >>>■ IFZ3-0THENPR I NTR 1 GHT»< 2 I • 

4 IFABS<2>< 1TH£NZ»-LEFT»<Z», 1 XRIGHTSC "000 " *MID*<2S,2 ) ,Z3 * I 

5 PRINTRIGHT«<2 1 «*LEFT«< Z»,LEN<Z* > -Z3 > ♦ " . " «R I GHT«<2«,23 > ,28 

6 : 

10 K*RNDC-5>"N-!6»C-1 

SO FOR J ■ I TONI X"EXP (RtO < I > 1 1 4 -3 ) >C " 2 "X I IF J<I0 THEN PRINT' ■ 
30 PRINTJ,X;SPC< 18 -LEN(STR*<X) > > J I A-T 1 " GOSUB 3 1 8 -B * < T I -AM PR 
40 C-ClNEXTIPRINT 

SO AV-B,'(Na60> "PRINT "AVERAGE" " ; AVI "SECS " 
60 END 
70 < 

100 REM 2 
1 10 REM 29 

ieo REM ze 

130 REM Z3 

140 REM Z4 

ISO REM ZS 

160 REM 26 



-IOOTO10 

• 2».28>I IRE TURN 

> 

) I I RETURN 



NT 




ORIGINAL NUMBER CCOPT) 
OUTPUT STRING 
FIELD LENGTH 
NO. OF DECIMAL PLACES 
ROUNDING FACTOR 
HALF -AO JUST <0.3> 
BALANCING FACTOR 
170 REM 21» -.STRING OF PADDING BLANKS 
ISO I 

ISO REM 3 DECIMAL PLACES BY DEFAULT 
200 i 

810 REM FOR DIFFERENT FORMATS MAKE i 
280 I 

830 REM 23 - DECIMAL PLACES REOUIREO 

RELEVANT ROUNDING FACTOR" - 





840 REM 24 

2S0 i 

860 REM 24 

870 REM Z4 

880 REM Z4 

830 REM 24 

300 ! 

310 REM E.G 

320 REM 23=8124-10012 
READY. 



I FOR 

10 FOP 

100 FOR 

1000 FOR 



INTEGERS 

1 DECIMAL PLACE 

8 DECIMAL PLACES 

3 OECIMAL PLACES ETC 




FOR TWO DECIMAL PLACES 

XIGOSUB 3 t PRINT 



1 


1S67. 23988 


1367.240 


8 


-3074. 1367B 


-3074 . 137 


3 


i8. 01 74446 


12.017 


4 


-105.788891 


- 105.787 


3 


IS6.BB093S 


156.881 


6 


-7. I0634987E-03 


-0.007 


7 


. 196348489 


0. 196 


S 


-3413.883S3 


-3413.884 


3 


480. 7 1706 


4B0.717 


10 


-4 121 .7488S 


-4181 .748 


1 1 


.04S458540I 


0.O45 


IS 


-4633.52048 


-4653.580 


13 


142.590985 


148.591 


14 


- .998771898 


-0.999 


IS 


8. 19395891 


8.800 


16 


-.383167819 


-0.383 





AVERAGE ■ .05 SECS 



I 



A meander along your 
favourite river may 
take a nasty turn 
when confronted by 
F.C. Tour's grisly 



IN THIS GAME YOU PLAY THE 
pan of Joe, out for a quiet boat 
ride at your favourite beauiv 
spot. Suddenly you realise 
that someone with a warped 
sense of humour has set loosea 
shoal of dangerous and 
ferocious alligators, intent on 
making you their meal of the 
day. 

Guide Joe through 4 waves 
trying to steer clear of floating 
logs, other boats, rafts, floatin 
weed — but, above all, watc 
those Gators! 

When you reach the narrow 
exit you have to guide joe 
through the locks without 
hitting the walls or over- 
hanging rocks. There is also a 
hole in the boat and you must 
use the fire button to bale out 
or (he boat will sink. You also 
have a lime limit — so don't 
hang around too long. 

The time limit and water 
level are shown at the bottom 
of the screen: 



I! 



Time. ..WHITE 
Water teveL.BLUE 

Plug your joystick into port 2. 
Normal joystick movement 
applies on the lakes but on the 
locks screen you can control 
joe by: 

Left reduce speed of boat 

Right increase speed of 

boat 

Up increase level of water 

You have 5 lives. 







Program Information 



Variables 



E 



V 
Q 
CO 

TL 

WL 

L 

S1.S2.S3 

SYS 36864 

SYS 37120 

L1 

LE 

SC 



53248 (sprites! 
sprite locations) 
colour of water level and time 
imit 

(time limit) 
(water level) 
(joystick port) 
(sound) 

(sound on) 
(sound off) 
(lives) 

(lake number) 
(score) 



Type in parts 1 and 2separately. 



Gator — Part 1 




10-200 


Music interrupt and data 


29999-61000 


Sprite data 


62000-62030 


M/C Hi-res clr screen 


62050-62150 


Download U.D.G.s 


62155-62235 


Sprites for title 


62300-62570 


M/C routine to move sprites 


Gator — Part 2 




0-50 


Set variables 


100-135 


Set sprites pos. 


600-999 


Set lime and water level 


1000-1099 


Main routine 


10000-10199 


Screen 1 


11000-11099 


Screen 2 


11100-11199 


Screen 3 


11200-11288 


Screen 4 


22000-22040 


Lives left 


23000-23155 


Game over 


30000-30199 


Locks screen 


60000-60998 


Titles page 


60999-61199 


Music for title page 


63000 


Joe goes walkabout 



64 Game 



Program Listing Part 1 




QUI OH 1 

14 PRINT-.T f 0*1-0102 FC*X«flt0i33 P*mDA |fH— I IHEN40 
28 PL»E36864»T4256*.-..A HEXTX 

-.' NExrr 



50 WTH169. 146. 1*1 21 
60 DATA169.234, (41 .21 
DATA172.8 

ae datao. i4i 

90 daiaiw-o. 
100 datmuso 

110 PWE 376*2 



163.0.1*1.26. 3. 96.-1 
169. 49, 1*1.28. 3.96.-1 
192.16-240,37.206. 1.147.173. 1. 147, 281. 6.206. 44, 236. 6- 147. 169 
2-169.31, 141,5,212.169,0.141.6.212.169. 17/ 141, *. 212. 183.8.147 



14? 

4,2 

148.141. 1 
'. 141 .0. 14 

0 



!12, 183.8. 149- 141,6.212. 103.0- 130, 141.1. 147, 76. 49. 234 
141. 4. 212. 24. 144,242.-1 
PC*E37633,0 FORT-0TU62 *£ADNf ,LF , D 
130 Pt*E3?860*T.HF POE36144.T.LF Pt>£30406-T,D' NEXTT 
135 POKE36144«T. 22 P»£38153*T.22? . 100 PO£3?300.T-I 

148 r*"l*23. 1 77. 30- 23. 177. 30- 32- 94. 30. 20. 214, 30. 23. 177. 30, 22. 227. 30, 22- 22?. 36 
1*5 DATA26- 21«. 38. 23. 177. 38- 22. 227.28 17, 37, 30. 19-63. 38. 21. 154. 38.22- 227. 30 
158 DATA21. 154.38.22.227,38.25-177.48-28.214,28.22.227. 188.8.8. 28.23> 177.38 
155 DAIA23- 177.38.32.94.38.28,214,38.25.177,38.22.227.38.22.227.38.28,214.28 
I6P DHTA25.l?7. 30. 22. 227. 30. 17. 37. 30, 19.63. 30. 21. 154. 30. 22. 22?. 30, 21. 134, JO 
165 DATA22.22?. 36. 25. 177.26.28.214.26.22.22". 166.38,126.29.28. 126-26.34. 75.30 
178 DATA25- 177.36. 22-2*7. 30. 23. 177.30. 28. 214. 36. 32. 94, 36, 34, 73. 38, 43. 32. 30 
175 WT*43. 52. 36. 43. 52. 26.36. 126. 26. 25. 177- 36. 26. 214, 36.22. 227. 38. 25- 1/7. 30 



4.38.23.177,38.22.227.38.21.154-36.19,63.36.17.37.28.25.177.38 
77.36.32.94. 36 214, 46.25. 177. 36.227227. 36.22. 227. 4*). 2B. 214. 30 
77.38.22.227,36.17,32.36. 19, A3. 26, 21. 154, 36, 22. 22?. 20.21, 154. 38 
38-28,214. 30.**. 22?. 30. 22- 227. 38. 22- 227. 268 
* NEXT 
A NEXT 



113 HH-X2-- 2 

183 DM(A*5. 1 
1*0 DATA23 

200 DRTA22.227. 30.25. 17 
299*9 H»l»eif'L*l3 READA Pt*E203464-i 
3I06B F0PI-8TO63 READ* POtE- 244*t4 •< 1 



38081 DATA48.0.0.23,48,0.2I3,2W4.0. 
36804 >•-• 166. 168. 2. 254. 186.11.21 
38887 DAIA254.186.0. 166. 168.0.20.6. 
36811 DMltW.$3.0.0. 196. 192.8.53.0.8 
3001* DHI-W. 166- 160.2.254.166.11 
38613 DATAI66. 126.43-96. 126.43.96 
38816 DATA 126. 1 1 . 106. 126,2.254 . 106 

BJU7 DAfAO. 166. 168 0.4 0.0.4.0.0.4,6.0,33.8-6.196. 192.0,63.0. 



97 00 4-. 6/ 0 V.ee. 8.8. 28.8 
.126. 43. 214. 126-43. 214, 126. 11, 216- 126. 2 
.88.6.49-64.0.197.3.12.21.48.246.212.6.6.0 
4. a. 0.4. 0,0. 4, 0,0,4, a 



38821 WI*e.8.192.e.3.3.e.8.21.e,< 
WHM t*TA0 166.168.3.254.166.13 
W25 DATAI78, 126.43. 186. 126,43. II 

36026 DATA126, 13. 178. 126. 3.254. I8> 



20 0 0.63.0. 1.76.8,3.6 



38827 m.) 166. 160. 0 
30030 BRTWj 0.192.0. 3 



5.12.0, 1.112.0.6.63.0.3.20.6.8.213,8.8.3,8 
26. 0.6. 84. 6. 6. 83, 6. 1-76, 6 5, 6. 6. 26. 0.42. 154.0.1 74, iki 
4»«0 DA1A126- 190. 1 71, 224. 169. 167. 232. 189, 167. 232. 196. 171, 224. 174, 191. 126. 42 
10*63 DRIfll54. 0,0, 20. 0.0.5. 12.0.1.64.0.12.83.8.3,84,8.8.28.6 
(8070 DMTA6-0 8. 0., 52.0. * 19. 8. 6.22a. 0.0. 16. 6.0. 16,0,0. 16,0.42, 154,0. 174,191 
(OOBti DHTfli m. iw. 170. 224, 169, 169. 232. 109- 169, 232, 196. 178, 224. 174, 191. 192 
.0090 DftT«42. 154,8.6. 16.6,6. 16,6.6. 16.6.6.228.8. 3. 19- 6. 8, 252- 0.0 



II DHTR12. 0-O.&2 
2 DATA0.0.20 0. 



92,0.67 
197.6 

1813 DH1«6.49.64,8.0 800 
1014 :>■ "-. 154.8. 174. 191. 192. 198 
3 78. 1 12. 109> 169, 120. 109, 169 

DATAI20. 190, 176, 112.174. 191. 192 

31017 &BIM2. 154.0.0,80.0.49 

31018 DATA64.0. 197 0.0.20,192 

31019 DATAO, 67. 0- 0-88. 48. 8. 6 



II Oil 



-AW! DhTAO.0 a 
3*0*3 DAT«3,19: 



.0.0.200.0. 12-0.24. 12.0. 14B6.6. 112.7.1-224 



34,06 [m'hO. 16, 38. 178.132.6.170 
5*289 DATA144. 4. 8, 16,6.6.8.6 
54301 DAr«0,0. 129. 1.0,134.2 
5*382 DAIA3, 8. 14, 132,0,31-20 
54383 DATA4,4,8.4,33.l2.9 
84 M*3 DATA8I, 194-30.146.06-66,12 
54 303 DATA109 140-0-246. 16.3, 124 
54366 DA1H17. 136. 147.90.60- 164,132 
3430? DATA35. 104, 132.4.80,72.4 
54 308 DATA144, 232.24, 145.48, 33.9 
■4iv53 DATAO. 32. 4, 128.0,4.8,8 
54481 DAIA0. 0.0.0.0-6.0 
54462 DATAO. 0.0. 0,0, 0.0 
34403 DBTA8. 0.0-8. 1.128, 8 
54404 DATAl, 120.0.3,224.0,3 
34*05 DATA240,0. 3. 216.0- 255.255 
34406 DATA255. 192- 252- 14.127. 255. 248 
54*07 DATA127.233,248.6.0.0.0 

34488 DATAO. 0.0. 8.8.0.0 

34489 DATA0. 0,0. 0.0. 0.0.0 

55000 F0PI-8T0235-128 READA PC* E 2 45*64 • I . A NEXT 

55010 DRIR0.8.8.0.B,8.0.e 80.0-0.0,0,0.0 0.0,0.8,8.64.8.1.213.170,131.191 
35O20 DATA63, 126.42. 233. 233, 63. 170. 109. 3. 233. 244, 3-93. 208 
35038 DA1I40. 0.0. 0.0. 0.0, 0.0. 0.6, 0,8. 6. 0.0, 0.0. 0,0- 0.0 

53840 DHIAO. 232. 0.0,124. 0,2. 172. 0,0, 172. 0,0. 16. 0.0. 232, 8. 8. 116. 6, 8. 236. 6. 8. 100 
55858 WT88, 2. 172, 0.2, 164. 8. 0.252, 0.6, 252, 6. 0,232, 8. 0.264. 0,0. 204. 8. 0.204. 8 8 
55068 DATH136. 0,8. 68.0.0, 136,0.2. 100.0.0 

55678 DATA6. 232. 6. 0,124, 0.2, 172, 0,6. 172. 0,0. 16. 0.6. 232, 0.0. 116,0.2,236.0.2.164,0 
.0 

33080 DATA1?4,0,0, 102.8,0,232.0, 15.232,0, 13.232,0.4, 12.0.0, 12,0,4.13.0.40,6,0.0. 
• 

.2. 172, 0.0,172. 0,0. 16. 8. 2. 232, 0.2. 1 16, 0.0, 174, 8, 8. 166.0 

■232.0,0.232,0.3,252.0, 11.204,0,43. 15,0.40. 13,120. 160.3 
,32.0.0.160.0 

.2. 172. 0.0. 172, 0 0. 16. 0.0, 232. 0,0. 1 16. 0,0. 172, 0-0, 164.0 

,2.232.0.0.232.0.0.232.0.0.204.0.3,207,0.3,207. 120,10-3 
160.40.0.32. 166.8,168,8 

,2.172,8,0.172.0.0.16.0.0,232,6.8.116.6,8.172.8.8.164 
166. a. 2. 164. 6. 2. 232, 0.0. 252. 8.*. 232-0. 0.204. 8. 3. 286. 128. 3,286.120 
128. 10.6, 128,0.0.0,48.8.8,8 
■,1.10.1 F".*£5j280.6 

62000 FQBI-0TCMW READA PIJKE49900"!. A NEXT 

62010 D«T*t234. 169. 40. 133. 238. 169. 4, 133. 231. 162. 128. 168. 0.138. 143- 230. 200, 192 
62826 DMTH48.2e8.249.232. 163,256,24. 185.46. 133.258. 163 231 . 183 .8. 1 33,231 
62038 DATA224, 152,288-226,96,0 

62830 PC*E3328O,0 POKE33281.il I-O PC*E56334.PEEK.56*3*iANlu:5* F-3XE1.FEE" I >HHD2 
31 

62053 »0t0-8TOo4«8 P>>E1*336'C PEE* •53240«O> NEXT PQKE1 -PEEK ci »0M POKE56334 . PEE 
«( 563341 OP 1 

62060 READA* T-T»l IFAKO-1TMEMPQk£14336'G*T . 90. 001062866 
62863 FC*l-8T06646bTEP8 A-14336-l'l fc-PEE*< H» KOKEA. MM NEXT 

62670 D»T«e.e.e.e.e,e.63.63,i26. 199.235, 124-33.63 

62073 DATA192.233- 15.240,253.3.235.224.8, 193.233. 15, 243-63- 231 0 
62660 DATA30.60. 255. 31. 231. 235. 239. 8. 136.221.235.233.235.255.233.233 



55690 DATA8.8. 1.8. 


0. 18.6 


33100 DHTftO. 232.0 

.8 


8. 124,i 


33110 DAI0252.8.8. 
55128 DATA166.0O 


180.8.) 
Id ,i i 


53136 DHT88.232-8 
.8 


0.124.1 


35148 DATAI88.0-2. 


164.0.1 


55156 DflTA160.8,0. 
53160 DATA0, 232.0, 


I 60 . 4,1 

a, 124.1 



•••1 'D t*-IH0 

35188 DHTK2. 



192.3.253.288.31 ,233 2i6.o3.253.255. 127.235.255.255.233.236-195 62085 DH I -1253- 235.253.235. 255- 235, 123.34.06. 185, 233-23?- 253- 1 IT 1 66. 89 



5080- DOTH233208.3, 191-192. I. 193. 128. 0 
3*8*1 :■*-"! k:> o it 162 >J 0.68 I a 
31*83 DHT«192.3.128.192,3.129.192.3.19 
31006 CHTH235. 255-255. 63.233. 236 
31608 VITR129. 128.3. 1-120.2. 1.0. 
32883 DHT80, 1,131, 128,3. 12" 



6.0-0.8-6.8.6.8.6-2.6,8.3.6.64,3,8 
,192.3.233^68.31.233.236,253.233.235 
91,192.3,131.128.3 
6.8.8.0,8,8.6,8.6.0.8,8.6,124.0,8.196 
192. 227. 233. 200-233. 255, 236, 127.235 



201. 

,6.8.6.6, 
> 19 

.3,255.288 



52006 DATH255.63-255.255.31-233. 
32007 DATA?. 191. 192.13.3, 120,20-1.192.40.0.96.64,0,46.0.0.24,8.0.0.0 
330*1 DATAO. 0,0, 8,0,8.8 
33802 DATAO- 0. 192 0.0.48.0 
53083 DAfAO. 12.0.0- 197.04.0 
33004 TXTA21. 149.64.90.233.34. 166 
53085 DATA06- 149, 190. 183.218. 190. 183 
33086 DATA218 - 166. 66. 149. 90.233. 64 
538*7 &AIA21. 149. 64. 197.84.8.12 
-J008 CATA0.0 48. 0 0 192.0 
13009 > ->-■■■■ 0-8. 8. 8-0 
34881 0.0,0.0.6.0,8.8-8 
54003 DA1AO20.0.0.21.6O6 
54084 DATH21.86.160.2. 175.230. 10 
5*005 DATAI09.198.«2. 189- 126-42. 169 



62*90 Dnm 253.238,aSBj25S 233,293 233,239 

62095 DATA127233.63. 127.31 .63. 127. 233, 23*. 232- 248. 232, 234, 233. 23*. 232 
62166 DATA27, 27, 219, 216.216, 219. 193. 193- 219. 219. 193. 193. 2?. 27. 216. 216 
62165 DATA36.42.20.6.8.28.42.36 

62116 DATA63. 127.63- 233. 127.63.93,8.234 . 235- 253- 234, 253,253. 176.136 
62113 OATAO. 44. 190. 235, 233, 234. 255. 234. 34. 51, 119,63.233,31-63,127 
62126 DATA*. 12. 190.223- 127- 190. 12,0 

62123 DATA1 , 1 1 , 7.47,31 , 191 . 127,233.255. 127.63.93, 13.23, 3,3 
DATA20 . 62 . 233 . 235 . 233 . 233 - 233 . 233 

223.223,0,247,247,242,249.248.49,3. 199.231,227 

2-37,237,235.15.240.233.31,231.248.233 



62i: 

62135 DATA231.251. 
62146 DATA183. 183. 183.219. 221 . 22 
62150 DATA-1 

62155 FC«1-0TO319 READA ' • . .• ■ i-i.A NEXT 

62160 DAIH131. 233- 126, 103. 233. 224. 63. 224, 240, 31. 192, 126. 63. 120. 126 
62165 DATA126. 32. »l. 253. 0.23-233. 0,13. 233. 0.3.235. 6. 0-233, 14. 0.233. 7 -240. 233. 19 
62178 DATA252-235.97.252.233. 192.28. 127, 128,26.63. 192. 28.63. 255.252, 1 1 1 ,255 
62173 DAIH246. 131 -233.240,0 
bile* DATAO, 
62103 0ATA233 



20.7.255. 192. 15.. 



126. 192- 127 



-O-k). 0.0- 8. 8.8.0. 32.0.46. 16 1 24 . 96 - 25 . 253 . 1 92 . 15 





DATA126- 1 


1 109 [91 


1.2.173.230 


5*007 


DAT 02 1 . 06 


.168. 21. t 


10,0.20 




DATAO. g,| 


.8,0.0.0. 


0.00. 60 0-0 



192 



540)1 DATAO. 51-48. 8. 12. 248.0 
54012 DATA243. 12.0. 12-240.0,51 
5*eu DHTHO. 20- 12. 192-21 >03- 192 
54814 . - - ■ . 6? .248-2. 173,234. II 
126-42. 189- 122.42 



M015 DATAl. 

34016 DATA250. 10. 191.234.2 

54017 DATA21 

54016 EATmO 



173. 



169 
70 



166-21 60 



. 192, 13.143. 192.36,219. 192.20. 113. 192.26.3 
62190 DATA198.28,223.284,13. 185.246- 15. 255. 246, 7. 105.246.6.224-224.8 
62195 DATA6, 0-6- 0. 6. 6. 8.0. 0.0. 0.0. 8. 8, 8. 6. 32.0.0, 112.0,0, 166,0.0.248.0,0,248,0,8 
62260 DATAl 12, 0.3. 234. 0,3-234. O,0. 112. 0,0- 248-8 8,230,0,0.232.64.0.249.192.0,127 
62263 0A(A128.6. 233.0. 3-136.0.0 

62210 DA* AO, 0.0. 0,0, 0.0. 8.6. 6- 8. 8. 8.6. 8.8,U.0. 4. 0,0. 1.30,16.0.235. 166.8,235. 
62215 DATAl ,235,224.3,228.246. 3. 191. 112,3. 146. 112,3,128.112 
^2220 DATM3. 128.46. 1 . 196.48.0.233. 160.8, 127,192,0.39.128,0.141,0,6 
62223 DA TA0.Q. 0.0. 0,0.0,0.0.0. 0.0,8.8.8.8,8,8.8.8,0.0 
62230 DATA7. 0. 0, 1 11, 240, 0,63. 232.0. 38, 8W.6. 31. 36-6 

62233 DAIM29- 128.0.62. 126-0.62 0.0.62.0.0. 127.0.6. 156. 126.8.26.8.8.0.8.6.8.1 
•2308 FORI-6T0255 READA POE49152" 1 .A NEX! 

62316 DATA162.0, 169.8.208.24. 105,5, 157. 0.268. 201 . 240 - 157. 8. 208. 96 



). 8.8.0. 0.0. 0.8. 0.0. 0.8 

5*020 DA I »*) >0. 0.010.0. 0.0.0. 0.0,0.0. 0.0, 0.0. 8>0<0>0. 2.0. 

34022 DATA64. 62. 173. 00. 14. 173. 80. 14. 47, 64, 14. 11, 192. 38 

54024 DATA*. 0.0. 0.0. 6.0. 0.6. 6. 0,8, 0,0, 0.0, 6, 8. 0,0,6,0 

54026 DATAO. 6. 8. 6. 8. 8. 6. 6, 8. 8-8. 8 8. 8. a. 8.0. 0.0, 0.0. 0.0. 

54028 DATA64, 2- 175.80, 2. 173.00.2. 13.64. 14. 

34838 DATAO. 0.8. 



62320 DATR162. 6.169. 



11.6. 10,47 
,0-15 



6***6 DATA162- 
62346 DATAl 62- 
62356 DPTH162. 



169- 
189. 



286-24.233.5-157,0,208.261 .248, 137-0.268.96 
200.24,233,5,157-1,208,201,240,137.1,208.96 
200.24,103,3.137.1,208.201,240.137.1,200,96 

201.200,144.2.169.203,137.248.7.232.224 



0.0.0,0,0.8.0.0,3. 

3. 192. 10.0.8,40,0,0,0.6 

0.0.0.0,0.0.8.0.0.8 
34032 DATA8. 0.8. 8-0- 0.0. 0 0. 0.0-0, O.O. 0.0. 0,0. 0,0. 0.0. 0,0. 3. 0.0. 13 
54034 DATA64, 18,15.86.0. 15.86-0. 13.64.8.3.192.8 
34836 DATAO. 8. 6- 8. 8. 6. 0,0. 0,0.0. 0.0. 0,0, 8.0.0. 0.0. 0.0 
54181 DATA0,e.0.O. 136. 192.8-264 0.3,284.48.0.204.0,6,252,12.12.168.8 
54104 DATA8.232. 3.46.232. 16.3.255-208. 195,87- 193.3-87,0,13. 16-48,204.16.0 
5416? DATA13.0.0, 1.0- 192,48 

54)06 DP TAB. 0,0. 0-0-8. 195.0-0-0- 0.0.48. 0.0.0,0, 0,0. 136.0.0 
54112 DAIA204. 192.0.2*4.8,3.204 

34113 DATA40.0.232.O.12.168.12 

34114 DATAO. 232. 0.200.232.3.31 
34113 BATA232.0, 13.87,0. 193.0? 
54116 DATAO. 0. 19. 195,0. 16. 192 

34117 OAIA40, 1.192. 0.1, 0.0. 0.12. 12. 0.0. 0.0. 192. 0.204,0. a. 48. 0.0 

54201 DATAO. 0,0. 0.0,0.0 

54202 DATAO - 0 0.6.0.4,0 

54283 DATA16.30.170,134.166.170.132 
34204 DATA4.0,16.166.170,132.38 
54205 DATA170. 134.4.6, 16. 166,233 
34266 DA'A154, 39.215.216.7.213,208 
5420? DATA38. 235 152.166-170.134.4 



201-211.144,2,169.200.137.248.7.232.224 



is*. e 


200.24. 


163.1. 


137.0.268.281 


240, 


137 


it. 


208 


9* 


109,* 


200.24. 


109,2 


157,1-266.201 


240. 


137. 


0. 


206. 


96 


169.1. 


206.24. 


233.3. 


137,0.208-201 


240. 


137. 


Ii 




H 


189-1. 


208.24. 


1 09 ■ - 


157,1.208.281 


240. 


137. 


1 


266 


96 



1,189.248.7,24. 165. 
62353 DATAl. 288, 2*6. 96 
62*68 0ATA1628. 189.240,7,2*. 103. 
62*63 TjATAI .208 ■ 236. 96 
62370 DATA162.2 
62375 0ATAI62-* 
62380 DATP162.6 
62383 DATA162.6 

62390 DATA162.il- 189. 0.200. 24. 103. 1.137. 1.208. 261. 246. 137. 0.206. 96 
6239S DAIA162.13- 189.0.200.24.233.2, 137. 1,208. 261. 248. 157, 6. 266- 9* 
62400 DMrfll62. 14- 189. 1.288> 2*. 233. 2. 157, 0.200, 201. 240. 157. 1.200. 96 
62410 DATAI62.2. 109.240.7-24. 103.1.281 -214. 144,2, 169.21 1 • 137,240, ? .232 
62*20 DAIA224.6.208.236.96 
62360 F0PI-OT09 READA PU.E4»v»" 
62310 FORI-6T038 READA PO*E4?3*0 
62326 DATAl 73. 0.226. 32> 1 12, 193. 3 

62530 DATA261 126.268.4.32.34.192.96.261.123.268.4.32,31.192.96.281.123.208,7.32 
62348 DATAl?. 192- 32. 68. 192. 96, 261. 119- 208, 7. 32- 0.192. 32. 91. 192. 96, 96 
62350 FOR1-OT024 READA PO.E45T66* 

•>25«6 DATA32, 114, 192. 32. 131, 192> 32, 140, 192, 32, 163- 192, 32. 182. 192, 32, 199 
62370 DATA192.32216. 192, 32.233, 192.96 
63806 P0K190-2 POE631.13 L0A& 

RE ADV. 



,A 


NEXT 


l.t 
• 34 


1 NEXT 
..194,i 


>M 
• 11 


1.261. ! 
9 208 


1 >f 


i NEXT 



E 



6 



Program Listing Part 2 




e Sl'Wt ■i2'»542?? S3-54273 FORI-$I-4fJil-'20 RUFELO HEM FWESl***.*^ ©QTO6000 

I $1-54276 &2*542r7 -33-54273 FQKI>»-410tl«ai PuiEl.O NEXT F-UFE51***. 15 
10 1 1 Mil 1 1 1 1 M t II 1 1 1 Ml 1 1 M 1 1 1 1 1 1 1 1 1 1 1 u i' n> t5 J..'. 

15 M-'ll 

id ' f-'h — I.. 

n Di-'.-a iiiiiMii;iiiiMi>iliiiMiRi;*iiiii|isiiiini|i" 
30 EI*" 1*1 — i — ^ 

! ■ ■ >n -it -ll." -ii -ii '-it: -Ii -ll •«.! -II ill 'ii <n 
50 HI*"B» " &•■■■■■) t> '■■■■■■I ■ i Ii 'IIIIMHI m IK 

100 -"5*248 0-203 PU*EV*21 .*35 P0FEV>28, i RO»Ev«3.~, 10 PC*EV-*36.14 Ll"5 SC-0 
120 Pu«EV*39<l R-0 BEFFil^a'-iPEEF'V*30 ,; -Ml , l> BEPFNB<8 '-'FEEl tV«31>HHBJ > 
130 F0R1-48T046 - i tv* i . 1. XXI PC»EV-3,1W K*tV«j.loO P^EV-9.200 POtEV»10. 150 
135 PC»£V«1 1 , 1 j5 P0»EV«* 7,254 P0tEV»*9-* Ri*fev»40.1 CU-54272 
500 Hu-4 9500 Pi>£V.iO.0 POFEV-31.0 uO'UlOOOw 

600 F0R1-1944TQ1983 Ft>tl.:« H»tl".O.l NEXT FORI-19O4TO2023 P0KII.72 
6I0 Pi>EI*C0-4 HEXI TL-1983 v*.-1984 L-56320 00*215 IM. ! .1 IXH, 3100 
■•9? REIURN 

law iv*40 iFFNA>A>-ioRFHB-.t'-ITHEHP<>E»I.O <iOiu^*ww 

1010 P0» ETL. 32 R0&EML. 72 POFEWL^CO-6 TL"TL-. 1 ML "ML*. S IFPEECL'-l 1 1 THEH0Oi'JB230 
©0 

1012 IFTL-l94VjRML.«o*<.IHEH2 t .i«0 
10*? PETUFTI 

10000 P0KE332M.2 P0*E5i28l-3 tjUSOBl 32-5OR-0 LE*1 

iowoo f*!ht-.t iin ia in hi t.1 . wanoBmniummi hhi.&i.ui ppini"*-- printfi 
luuoe FRlHrMOOr PPINTOI PRINT "«)M~ t-*(HUKb<3l'.C-l O0SUB12550 POKEV*21.235 

iowo* iyjsniteJ» kb-ev*! . ire poev.235 Knvtas.ti po*ev*3i.o r-o Pc*E2e4i,2i4 

low OOSuB^OOO 

10010 '»>su»ieee r*p-i ifr>39ihei**o 

iu05>: iffeei • v«i ■ .45t'*M>c-i'."Lt»5oo-»liH< il'-lHltw^5- QQnOMM 



.THB'P'.EI- 



■ . ThB-R> ,EI 



PO»E53280-2 P0FE5328I-3 &O'>UBli*50 




Pt>EV*3-l26 PC*£vt30.0 P0*EV*3).0 



NEXT ppihIIsi 



trz 



101 1« PRINT* 

iei?9 oqtoiooio 

1 1000 PPIN 
11005 PPINI-B- 
liooo Pl-IHr-TTl 

noo? print "m 

I 10WH PUNCHI 
IISB? PR1NTTTT 
1 1010 P61Hl"TD 
UOll PPINI—TT1 

11012 PPIMt-TTI 

11013 PPlNT"m 

uoi4 ntiNTTxii 

11015 P61NI-TT1 

1 1016 PRINT 

11017 PklNr-TTl 
UOIO PRINT 'Ttl 

11019 PRlHT-m 

11020 PR IN 

11021 PR1N 

11022 PRINT 

1 1023 PR IN 

11024 PR]N 

11025 PRINT-TT1 

11026 PP1NT-TT1I1IIIMMI I I 1 1 I I I I I 
1102? PR1NT--TT1IIMIIIIMMIIIIIM 
11031* QOSUMM SVS3C064 K>Ev.4o FU»Ev*1.2 

1103* POKE2041.222 LE-2 0030824000 G0SUB12330 P->EV«2t»,3 P0f£v»21 . 255 
11040 O0*sUBIO0u 

11060 IFI»EE».V-»l><43THEI»$C-5C'>'LE«50e'»|NT'IL>-IHT.l«./5' GOTOjOuOB 
11099 OOT'JU04y 

IllOW PC* 651.80 2 F-otE5326l-3 •Ju>ajBl>250 LE-3 V-53248 »-0» EV-*0 - 1 POKEV-21.255 
11105 PRINI-T PRINrb*.M.H*.i.l. > '«M*SM»W0M*V > .-9*.nf .lit .b« F-U»E*041 , 223 
nio-. pmnI"* i»mi »m»m>mi . prihtfi f*ii'<-mm m **m*w wu aaa m , kkev-40.5 
1110? PR1NITHB>*4-.FI PRlNT-aMV PRIHTijI «RL«T WPW' PR[HTTHS< 31 1 , W C-OSUbl.5*0 
11108 PPI»I mmmau RR|NtTBB'4.H«.''-TTn MH/TTIl - .Hi,-rm -,M* 
11128 OOiOl-600 PC*E"1-170 PutEV,235 POEV*j8.itf »J*EV-31 . | Ft*£V*3.I55 

11139 ii- ■ t- • 

11140 ooswiaM 

11160 lFP€E«>:V-li<4iTMENSC«^L»<LE*5O0'«INT(TL>-INT(Ml./5- WOIWOW 

11199 WJT0II148 

11200 PC*E53*80.4 P0»t53281.3 PRlHf.H" PRINH-I. 

11210 FURT-OTO20 FRlNT'lf s'i 
11220 PRINT -HOT PRINIIHB'4-.H».T«B- l3'.Mi.lNB.22'.m,l«BUl»-MI 
11225 PRINT' NT PRINT TAB' 31 > < CI 

11230 PtlNl-MMMMM* F*!HI IR|n4i.l4J. --T . 1Mb'. 13 • ,M». THB.22-.HI, TH»Ol I -M 
11235 PRINT' S' PRINTTmB' 1 : ■ Ml 

11240 PRINT •mMMM' FBINIThB- 1 1/- ■i-"THB'20'. 'S-"THB'29> 1 "»-" 
11245 PRINT 'llMI' PBIHTThB(20J . 

1 1 2 it) print "■aawMat" prjhithk . i «i »«i >m mi jiiil«l 

11255 POKEV-21-255 PRItit *Himil»H» 1 1 1 1 1 f 

1126b &Cr»UB60O SYS36864 K*EV.24| PU»EV*1.195 PWfcv-3 200 PUfEV*30.0 POfV-31,0 
11269 P0»E2041.^22 LE-4 WJJUB24000 OJSUB12550 PO>EV.283 P0KE2040205 
II 200 OJaUblwOw 

11290 IFPEEh<V»l><43THENSC"S",»'Le«W0/'|NHlL'-lNliHL'5' U-IIOIWXWU 
1129V OUIO112O0 

U'5*>0 FRIHT'M". PRlltllrHB'34>SC ( <PRlHTTnB'V4r,Ll 
12555 F*1HI"«W. PRINII«B( J4..U «II*N 

13250 P.>E2040.2O5 F-*-[^T0l5'iUF'2 PO*fcV*I O NEXT • ■! r - . - > ■• Pl>EV«31/0 RETURM 
.-tfOu v-jio864»256 

22005 D"2l' FX*E*3I.16 Fwtw.lb FUR J -5 1 025 hi-N-1 IFH.=THEND*B* I PU»E^»40.D «-U 
22010 F0Rj;-5T0JSTER.5 POKE53/JJ POKEil.33 NEXT J J. i PWEV-27-1 R0>£S1.0 
22015 Ri>ES1.128 P0>E&2>1I9 

22020 a«PEEkv< yapttk\V*l> PttEV.rt FL*I-vTL«5*»lt»'5 Fu* 1 1-22010^*1 P B K m **»n 
22V30 PL»E>1-I*0 ROKE-'l,! POES3-250 FT>,tSl l2? FURI*«OT020 

22035 NfcXIH.TT.T RU*EV*2? 0 Ll-tl-l SYS3b864 IFLKIlNENwCPiUB^^lOO 001068668 
22040 ONLEOOIO10OOO.110eO-lliee.|l2O0>3OOOo 
23000 IFHL'.l9MIMti*hlURM 

23005 P0kEHL*C0.4 QO-OO-I IF00^2l6lHtllUU>*15 

23010 »*.-»JL-| FM>t204W.W RtTim 

23108 ■ !■ rW M >W*—O W i»l ijnUE OVER* Pi*tv.<i.8 F-O* E53260 1 1 

23140 P0*(5i281.ll POFEil-16 P»ESl«r.32 P0»E51*14 . 32 WEW. 31 PUKE'S2*?.15 
23145 Pi>tn»14 i| 3VS36e64*256 

23150 FOBTT-100TO5iTEP-4 Ry*ES3.TT POKtSJ*; . I T*10 P0>E&3»14. Tl*20 PMM#I7 

23151 Kkk.»l*/.4J F\»ES1»14.33 PRIMTH FOFE64©. IHTiRND' I '"15 ' NEXT 
23155 PRINT* I PRINT- SCORE --8L FO*T-0TO250O NEXT RETURN 
24000 PRINT"««-. RRIinTHB-Ji^-Slt-. 

2*005 PRINT-MOT PRIM* '"*B"32'"LI' - ' 
• 4010 PRINT 'Our. PRIM 1 1HBS32. 1 'LH~ 
24020 PEU#*I 

30000 PC*E532?2.31 CM-14336 y 15496 PO»E5J*80-0 O"1024 M-U08 RO»E190.0 FF-255 
>•■'.'- POKE5t>3il • 1 
30010 V-53248 FORI-OTO" P"*Ei.H*I*w*F HEX I RUKE53*81.3 
30014 PRINT-tfcT POiE5J2ei.0 5VS499O0 K3RI«10«4iyUOO Pi*El«CN.0 NEXT 
30020 F\»E.-04U.^44 X-20 V-l'I P0»£V»2l.l ROkEV,X R0*EV*1.V Pl>EV»31-0 
30050 RRINTTHB' 37 " INBI-k I I* PRINT l«6> 3i">"*Tfc»" PRINTTftB- 37. "TMI U" 

300bO PRlMUHb- J4 •- «-». ,!-•)■ PR PIT 1MB. 30 1 * 1Mb. I I **-tt ' HXtO'' 

30X5 FUN'TMB' Urlt-yxj^MmtKM-' PR1NTTAB<22>"1»4> m 1 1 1 1 tfMf 1 1 1 ■"■MOO" 
300ro prI"UThB<22» "Ttcooc<"-':---n ■nrBoocooo"* 

100." PRINT 1MB' 10 "TU I I I I I I M I I ft* I M I I M (~BX^B>OSJOOO* 

3OO80 FR|MfTHBaO--'M-^X->s->^AV^«ll»**. I • ' "■tOXKMO'mbOO" 




JOBS! 
MOM 
«095 

«10O 

KIN 
30116 
301 15 
3012O 
3812* 
30124 
30I26 
3812,- 
3012* 

mi ■ 

30132 
101 34 
30136 



301 39 

3014W 

.0150 
(0155 
30157 
(01&5 
J0I70 
J0175 




Ml i 



COOL" 

60015 

6002. 



CM - 



,.,104, 

«IU4' 



60065 
(OOM 
-«9.-4 
■■■0995 

vtf 

^0997 

6IO05 
•1010 
61015 
-.1020 
61025 
■>1030 
OI035 
61199 
oiOOO 
63010 
63015 
6)020 
S363S 



^*05-i 
630e0 
6(065 
63W/0 
63075 
6)060 
6)08. 

)064 
6 308*. 
o(00>i 



print !mb< i o i - 1 1 1 L—rmjotL 1 1 ra-fcawjAwiojuo' 

PPINT-T«* I I M I I II K-H rWXrC'^U • "•jOCv-^jOIV -J ■X4rtBJJ^iJjO0M>00 

PRINT >n*«0«0<JOC0004l K>OOOQJX*X>WiO^mOC*lCm)*D0ltXMmX>O0 * 

PRINT—BM4I 1 1 1 riBwoAcottooOo-j':-.-:-"*-' -U ■ " . ■ ■o-BjUJOO'jO 1 

PRINT "MOO. BDOUOfc I ■T>XH>X'0.40O->JBX>QC'i.>^ 

T« .w «• »« ' .1 >>X»00OOO000<X>00000OO'' 

pRiNi " t»'^f>ioo<r>>y^o<y)00ooo>jiooO'>>Moo(yKr>jo' 
** INT"0)X)0OO0OOll)0O»to00O0*X4D*»XKI0>»OOItF. J " 
RPlNT-i>Btooo>>^oooci;a>jooocoolt>oo:a^ %l ' 

f*iNr-«B6«»>>xiooo'>>>3Ji'rtii^o»&>^ i r* 1 

pR]Nr'*BB<wxxi%oo>A>tHM)coooooi^^ i r~ 

PPINT"(0MiMxrO000HMaCKH>XdtXil^^ Hif" 
PRlNT''fJIMIMXK)IIXOOtH30«>OC">>^^ i 1 1 If" 

— u n ■ . -ooowi ■ r- 
xtmMj'MQomacwjQm r- 

KOOOOOOW I K 1 

IT" IFDB-lTMENbD-O RETURN 

■0 R-56320 

ROKEV.X*2*56»'X>255. P0>EV«I6, vPEEF' V«16-F«D253 't*- X>255- P0KEV»l,V 
ROVEU-FF U«U-.3 V-v-.i ROCEVH-V ROKEV«31.0 Pij*EV«3«.0 PfafRKW) X-X*2 

»C"3C->I IFPP-|23THENX«-I V-V-.4 W-.* 

IFPP-ll9TNEH'.-:>2 v-v-,2 U"J-.2 

1FRP-126TMEHV-V-.7 U«J-.7 

!FFtlB-B>-lTHENPOKEV+]e.e L 1 >C I - 1 ONLEOOT 'J1U0OU : 1 1000 ■ I I 100 1 1 200 - I UOtW 

IFX>33OTMENPC*EV»I6.0 LI*U«I ONCE00T01 IO00 11100.11200.10000 
OOtOMMt 

pnnsaa—^ii ronsaan.t pc*e5J2^2.3i »v&3ri20 poKt5324e-2i.o restore 

FijRI«54272ICi542y6 POFfcl.O HE T POKE 54 296. 15 
PO> E5 3265- PEEK ■ 53*65 'UP 16 

V»5)24& PG*EV«il.31 P»EV«23.255 Ft" tv«29 , *55 FOR 1-391046 PO»EV*l,13 NEXT 
(■«EV*2s.o 00*250 R0*EV»2-.O DD-I P»INI"T l Xi'iUBiW050 
FRIHT'RB |V FPHNK TOUT I I I HI T SPftCE fctHP TO RLflv - 

X2-I25 X3-l«5 X4-205 X5-245V 1-255 
POREV./l P0KEV-2.X2 Pt»EV<4,X3 P0KEV«6,X4 ROEV.8.X5 

FORI-lTO*iTEP2 POXEV-I.VI NE-.r F0R1*2»40 J0.W44 OO-OG-1 P»EI , 00 MEXT 
*0R-l*255Iu55iTEP-l FO»£v-i,vi RMCV*>rVl PU»EV»5 VI POEV7.VI t*0KEV«9.Vl 
MEXTVI C*OW(t H-UOW b-tfOO 
F0R1-39T046 POKEV.1.13 NEXT 
OETXB 

Pi>E>l*7.|fc ROtESI.32 fOVESI*14.|6 P0»ES2*14. 31 

P0*ES2*7.31 POES2.I5 RENIiH.B.C POFE-33'71 PWtS3->14.B H W»|.C 
PUFES1 47.17 PO>E&I,33 Pt»ESI-M4. 17 1FC-*hjOTHENPEsTORE OOT060090 
F0PI-OT0150 NEXT IFX«-""TM£N60fl84 m 
I F >:•■" " I HE l-i0-.* 9d 
OOTO6O084 

BV6MM4 OO*iiJb63000 CLP V-53248 POibV*23.0 R»»tv*29.0 RESTORE 
for i -2042 t 0*04 7 pc*e1 ■ 215 next qot01 

DhTn5.5-5.10, 10. 18. 5. 5. 5. 10. 10. 10, 5-5-5. 10. 10. 10, 5,5, 5, 10. 10. 10 
DHIK5. 10.20.20. 18. 5. 5. 5. 5. 10. 20,5. 5. 10. 5, 55. 5, 5. 3. 18.10- 10.20,20.20 
I+ITH-IO. 10- 30. 10. 20, 30. 10 - 50- 50. 18.60-70. 10. 40. 60. 10.30.70. 10.20.60. 10- 10.5 
l*.Tri20. JO-2O.iO.4O,iO.4O.5e.4e.60.6O.6O.5O.4e.3O.40.3O.2O.3O-2«,ie.»/i;,S 
I*<Th*0 . 30.40.20.30.40.20. 30-40,40.50 60.40.50.60 40.50.60. 30. *0- 10 20 1* 5 
M-TH20 «• *»- >0.40. 30 40. 50-40- 143.*0. *0-5O.40, 30,40. 30.20. 30 -20-10.20. 10.5 

BAnue<8 

Dh I H40O • 000 - 000 

FOKE53200.3 P0*E53281-3 RR[HT"-7' PU»t53272.31 
A] I K I M M I I M I I I I I M I I I I M M I I II I I I M II I I I I T 
fO*~~m 

«}|."H M I M I I I M M I I M I I I M M I I I M M I M* 

H4|."<1.«.,...-.... ■ H51 •■'•«—>■ IIX*B 1 «<»" i6l'"5IMOBH I" 
PRINT-IT PR1NITHB' 331'MOOOOOO" PP INI TSBi 32 ■ ■ '■•COOOOOO" 
FBlN^THB^31>■•^^0OO000OO■• PP1NIIHB<30>-^■000000000'• 

PR I N T T MB < 2? > * TPOOOOOOOOOO " 

PRINTTHB<29>l*4»TflB'29'.H5IIMB<69'.'45ITHB'6*'H4l 
FRINTTlU-29',l»4»T»IBi29>.H5IIFIB'69-,H5iTH8'6?.i :; Hil 

RRIHTTftfl. 7--fl3ITHB'8'.H2«TH6.4B' WI^BB' 47, . H3IIflB.48> ,R2IThB<08- . R2I 
FOPT-0TO4 PRIHTF.ll ICXT PR I NT "TTTT TTTTT IITTT* PR1NTTHB" 67. ,H6I 
FRINTThB' . < '■ Ml *M " 

Pi>E2040 245 V-53248 FOEV*21.3 PWEV.36 POVEV.1-166 PC*EV.28.3 
MjtfcV-37-7 POttV»36-0 POlEV*39.1 Pl>Ev-*j 3 P0*EV»29,3 PO«EV»27,2 
Fi»E2041,237 PLREV.2.240 P*£v*3- 121 POfEV--4o,10 X-240 

FuRT-Olu* FOR2"*46I0250 P0t«E2O41.Z'X")fr-I Pu*EV*2.X FORH-01020 NEXTn.Z,! 
FORV-121T0I66 P0»XV*9.V llEXI 

F0RX1-36T02STEP-.2 P0FEV-X1 R0*tV*2.Xl NEXT POKEV-23.0 POKE V29,0 RETURN 



i-'EHLV. 




The natural 
development for 
Commodore 64 
users 




IN fILlS CF UP TO 16* DUHUCIfBS! SlKHBASl 'i EVEN H«S * S«fE»»«T AMD 
CAiCTAHCP C«PABILII*. CflLEKD** WNCTICNSt E»S» IHMT FKH WBOPPOCtSSOR ffl 
WI* FILES. BOTH »€Nb-CBl»EN »ND WOC«H CPM0NS, 5CF 1 1 Mj/SE ARCHING. FULLY 
OCTINABLE OUTPUTS... SUPC<**SE W IS ESSC'l*. IF TOI HAMT THE MOST FROM 
TOUR 64! SUPPlIEO ON 15*1 DISK KITH E'CfLLENT rjIfFIAl/PEEEPEWI MftMjtL 
PLUS AUDIO LEABHItC IAPE... AND THERE'S A WIDE CHOICE Of "GET-»0U-CO:nc" 
APPLICAIIDN STARTER PACVS AI tPA* £9.W EAf! 



or ma i2*r> tea.tc 



YOUR PBOOPAMS 
£y to MILL RE ALL* 

•* ' I*x( OFT WITH OIL UPAOf! 
'DLL* COMPATIBLE VITH BASIC. JE1PACK 
COMPILES BASIC PROGRAMS INTO MUCMIfC 
CODE. Ptl W.J.NC UP TO 25 TIMES FASTER 
AMD EVEN USING UP TO HALF AS MUCH 
MEMORY... AND IT ACCEPTS EI TENDED 
BASIC AND MACHINE CODE ROUTINES TOO! 



FIGAR0<5t 



AT LAST. AN 
EASY-TO-USE 
YET POMERniL 
UMRIC DATABASE. KITH A FULL RAM* 
OF BUILT-IN STATISTICAL FUNCTIONS. 
PLUS FORECASTING. CALCULATION IND 
MIXED Ml-RES/TEIT GRAPHICS. SUPPLIED 
ON DISK Him CLEAR. COMPREHENSIVE 
-.-■< ■ . FUNCTION- KEY OVERLAY. DEMQ 

PB0O " H - OP PRICE tUrSR £75 .00 



^izawfite 64 



VlidRRITE ilk IS A NIGM-PERfCHMAHtl . 
LO--COST *ORD PROCESSOR. WITH ON-SCREEN 
FOBNATTING. THAI TAKES FULL ADVANTAGE 
OF THE Lb S COLOUR. GRAFHICS AND MTMOO* FEATURES... AND SUPPORTS VIRTUALLY 
ANY PRINTER! WITH A COMPREHENSIVE AND EASY-TO-FOLLOW USER REFERENCE M/NUAL. 

Vl7»ITE IS THE ULMMME PERSONAL COMPUTER WO PROCESSOR! AVAILABLE ON 
CARTRIDGE (I MPtt U3 ). DISK ( L»T*3 I6fj ) OR WITH VliASPELL 03^% Ifi'j) 



MM II TOMORROW? 



CALL US TODAY ! 



Oh 01-546-7254 



YI2ASPELI 
VI /ASIAN 
DTI JETPACA 
EASYSCRIPT 
EA5Y5PCLL 
SIMON'S BASIC 
ASSEMBLER M 



ii)is« ; 
(DISK) 
(TAPE) 
10ISU 

(Oisr.) 

(CAST) 



liMl H9.9S 
i»r« 169.00 
U*r« 113.95 
UVtOO I6S.00 
IHWJO 1*1.95 
ISOrOO 1*1.95 



HJUiPLAN (US) 
PRACnCALC 
PBACTICALC 
HASItR M 
THE 100t 
HOlteASE 1-4 



<0I5*) lbt. 9S 

(OISI) U*rtO 

(TAPE) U9 13*. K 

(DISK) tU^OO 16*. 95 

(CART) U*r1S 139.9S 

(DISK) 117.95 



rOlSK) BMim.ff PBI«TLIW 6* INTERFACE 1?9.95 



PRICE'. INCLUDE ISt VAT AND AKE 
CORPEt T ON GOING 10 PRESS. 
ORDER BY POST OR PHONE. USING 
CHEQUE. ACCESS/ BAB CLAY CARD OR 
OFFICIAL ORDER. DESPATCH IS BY 
1 AWE -DA Y 1ST C LASS P05I. PRE- 
PAID DSD[BS Ffiff. MOIXXT DATA 
AVAILABLE ON RE QUE ST . REF A JO 




LAKESIDE HOUSE, KINGSTON HILL. SURREY. KT? 701. TEL OI-S**-7256 



**** COMMODORE 64 **** 

R.B.S. 

(RAPID BACKUP SYSTEM) 
CONVERT YOUR SINGLE AND MULTIPART TAPE 
PROGRAMS TO TURBO-LOAD. FASTER THAN THE 
COMMODORE DISC DRIVE. EACH CONVERTED PROGRAM 
WILL LOAD INDEPENDENTLY OF R.B.S. NO POKES. NO 
SYS CALLS. NO USER KNOWLEDGE REQUIRED. LOAD 
"THE HOBBIT" IN 120 SECS. FOR PERSONAL USE ONLY. 
CASSETTE £7.50 INC. 

HYPERSAVE — 64 

A VERSATILE AND FLEXIBLE FAST-LOADING UTILITY. 8 
ADDITIONAL BASIC COMMANDS. SAVE/LOAD/VERIFY 
UP TO 48K CONTINUOUS RAM AT HYPERSPEED. 
CASSETTE £7.50 INC. 

BACK-UP - DELUXE 
A POWERFUL AND USER FRIENDLY SERCURITY BACKUP 
UTILITY. LOAD/SAVE ALL PROGRAM PARTS 
CONTINOUSLY. INCORPORATES A SOPHISTICATED 
HEADER-READER. FOR PERSONAL USE ONLY. 
CASSETTE £3.50 INC. 

PRO-SPRITE 

SPRITE LIBRARY. DESIGN, MANIPULATE, CATALOGUE 
MULTI AND SINGLE COLOUR SPRITES. CREATE DATA. 
JOYSTICK CONTROL. PACKED WITH FEATURES 100% 
MACHINE CODE. CASSETTE £7.50 INC. COMPLETE WITH 
YOUR FIRST SPRITE LIBRARY. 
SPECIAL DISCOUNT: ANY TWO PROGRAMS £9.99. 
ALL FOUR £19.00 PLUS FREE! SECRETS! 
I/O GUIDE WITH EVERY ORDER. 

CHEQUE/P.O. ORSAETO: 

DOSOFT 

2 OAKMOOR AVENUE 
BLACKPOOL FY2 OEE 

•** FAST DESPATCH GUARANTEED **** 



Unlock the full potential of your disk-based 
Commodore 64, use Superbase 64 - the complete 
records -handling system that puts business-style 
power and practicality at your fingertips. 

Superbase 64 solves a host of filing problems 
with its easy record formatting, powerful indexing 
and sorting, extensive outputling options, and its 
'Superbasic' programming capability. 



■ Invoices 


■ Stock 


■ Finance & Banking 


■ Prospects 


■ Collections 


■ Management Accounts 


■ Recipes 


■ Car Fleet Records 


■ Personal Filing 


■ and many, many more! 




- The complete information 
control system for the 
Commodore 64 includes a 
simple-to- follow manual . 

Complete your Commodore 64 - Complete the coupon 



More inloimation on SuperOue 64 u availa£*e t'om Commodore 
Daeton MafOr Retailers o> (torn Precind Software direct 

From ihe authors ol Easy Script 



I 



Please send me more information on Superbase 64 

Name Tel 

Address 

Age 



'1% 



Occupation 



±5 

Precision 

Software 



Precision Software Ltd. 6 Park Terrace. 
Worcester Park. Surrey. KT4 7JZ 

Tel: 01-3307166 
Telex: 8955021 
PRECIS G 





Peter Freebrey tries to 
prevent fellow 
adventurers from 
getting lost in pursuit 
of their goals. 



WITH THE RIGHT PIECE OF 
magical/technological equip- 
ment, it is possible to see and 
hear from afar. The past is 
clearest, the present can be just 
a little misty and the future can 
be decidedly foggy ... but in an 
effort to keep you at least 
partially informed, the scrying 
glass has been dug out of the 
cellar and given a quick polish. 

Sadly, causing mystical 
black runes to appear on this 
piece of specially pulped wood 
fibre has no magic involved. 
Technology takes it's toll and 
by the time you convert this to 
neural pulses, and translate my 
apparent gibberish into some 
form of understandable 
communication . . . some of our 
prophesies will already have 
been proved true (or false!). 

PSS get the Midas touch 

PSS are introducing the MIDAS 
adventure concept for the 
CBM 64 — The Multl Dimen- 
sional Animation System. This 
appears to offer all sorts of 
exciting facilities, including: 
3D graphics, data compression, 
a form of artificial intelligence, 
mixed joysticks and keyboard 
entry and expansion modules 
for future games. The first 
adventure using this system will 
be 'Swords and Sorcery', which 
appears from PSS releases to be 
a rather fine example of 'mazes 
and monsters'. Your character 
may be developed in 
traditional style and then 
progress through further 
Swords and Sorcery* modules . 
. . . Sounds great — we'll let you 
know when we see one! 

Piecing adventures 
together 

Mosaic Publishing have three 
adventure games for the '64 
about to hit the RAM. "Erick the 
Viking' has been written by 
Level 9 and is a graphics and 
text adventure based on the 
children's book by Terry Jones. 
Screen shots on the packaging 
look good — so keep your eyes 
skinned for this one. 

Also from Mosaic, but this 
time programmed by Shards 
Software are: The Stainless 
Steel Rat Saved The World' and 
'Nomad of Time'. Both are 
based on books bv well known 



TALES FROM 

RYPT 




ig1 



sci-fi authors, Harry Harrison 
and Michael Moorcroft, 
respect ively. Pre-release 
review copies of these two 
seemed to be a trifle slow in 
response time. Final versions 
may well be improved — watch 
this column for the low down 



Beyond midnight 

Beyond Software have finally 
got to the point of releasing 
Lords of Midnight' (well 
almost!) for the CBM 64. This 
program has caused quite a stir 
since it's introduction for the 
Spectrum and is eagerly 
awaited by us 64'ers. 'LOM' 
crosses the boundaries 
between an adventure game 
and a strategy game and by 
anyone's standards, produces 
an epic saga. On the Spectrum 
some 32,000 different views of 
the landscape are claimed ... I 
can't wait! 

Talent goes West 

Talent Computer Systems is a 
new software house and 
amongst its offerings is a mainly 
text adventure for the 64 (sorry 
all you other Commodore 
owners — but thats the way the 
bytes crumble!). Called 'West' 
the program is set in and 
around a ghost town in the 
Wild West — you ). T. Edson 
fans had better oil those 
sixguns and check your 
poncho's waterproof! 

As this will be a regular 



adventure corner, we hope to 
foster a certain camaraderie 
with you the reader. If you have 
any views or news — let us 
know. We might even be able 
to HELP. Alternatively it might 
be just as pleasant to learn that 
we are semi-mortal and cannot 
solve that problem either. 

You are on a mud 
bank . . . 

What next? This is part of the 
opening sequence that you will 
find on entering 'Dungeon 
Adventure' by Level 9. You can 
of course 'thrash around' every 
which way, to try and find 
something — anything! — and 
generally get the feel of the 
game. Possibly some of us have 
to 'get going', move and be 
damned etc. But, if you are 
planning to be a true 
adventurer, sanity must return 
and out should come pencil 
and paper as you carefully start 
at the beginning. 

Incidentally, if you do have 
a quick 'look around' before 
starting seriously — don't 
forget to QUIT first — if you do 
not start from scratch you may 
find that quick 'look around' 
has used up some of a pre- 
determined number of moves 
. . . and the light/sun might go 
out ... Or you may develop 
blisters before finding the 
bandaids etc. 

As you move, study each 
location description carefully. 
There may well be red herrings 
but many of the clues to solving 





WILLOW 


S. END ISLAND I 
MIRROR 




SIREN 



the game will be in what you 
see and meet (literally in the 
better graphics games!). Some- 
times the descriptions will tell 
you which way you may move 

— even if this is so, still try all 
directions anyway. Some 
programs have the phrase 
obvious exits are:' I leave it to 
your imagination as to what the 
un-obvious exits may be. 

Moving may sometimes 
prove to be a puzzle in itself! 
Most adventures will accept a 
verb and a noun — in that 
order: GO NORTH — some 
will accept more complex 
sentences and many will be 
quite happy with single letter 
entries for directions — N,S,E, 
or W. Find out what your 
program accepts. Why waste 
time typing CO NORTH if you 
can more easily use 'N\ 

Simple movement direc- 
tions are usually no problem — 
even if you do have to type in 
GO WEST in full! What can 
prove baffling is how the 
programmer has interpreted 
requests for other seemingly 
simple actions. Try not to pet 
too frustrated if what you think 
is obvious was not so to the 
poor old programmer. Ideally 
each adventure should 
recognise all the synonyms for 
any given word, but memory 
limitations alone preclude this 

— just be patient and learn his 
system I 

There may be a location 
hinted at, which appears 
impossible to reach by using 
the compass points N, NW,W, 



Adventures 



SW . . . some programs even 
require NNE etc! Do not 
despair, try ENTER 'XXX', or GO 
'XXX', or IN 'XXX', or even 
ENTER, GO or IN. If it's above 
you try CLIMB, SCALE or 
ASCEND — you did try UP 
didn't you? I feel that the 
simple obvious word should be 
used, as I'm trying to solve the 
overall puzzle provided by the 
adventure, not trying to pass an 
additional test on the English 
language. I once got caught for 
ages trying to put my lamp out 
— otherwise it burnt the basket 
I was trying to put it in! — OFF 
LAMP, OUT LAMP . . . finally, 
and almost at the point of 



as mentioned earlier, there 
may be a time/move penalty 
and also in most games you 
must learn by trial and error 
what to do with what, when 
and where. 

Most adventures seem to be 
split up into quite definite 
sections. Having solved (you 
think !) a section, if the program 
permits, SAVE your game at 
that point. This seems obvious, 
but a surprising number of 
people end up starting from 
the beginning, repeating 
dozens of moves only to be 
killed at the same spot again 
and again. 



Fig 2 



T 




EDGE OF FOREST 



LARGE TREE 




EDGE OF FOREST 

H 



V 



EAST/WEST ROAD 
THROUGH FOREST 




SLEEP 



SPELL 



EAST/WEST ROAD 



OUT 




WAND, COINS, DICE 
1 



giving up, EXTINGUISH LAMP 
— ouch ! A Thesaurus is a useful 
book to have on occasions. 

Another thing to look for is 
whether you have to type in the 
lull word — or will the first 4 (or 
3 or 5) letters suffice. It may 
look cryptic but THRO CRUC is 
much quicker to type than 
THROW CRUCIFIX! 

Be prepared to die or quit 
fairly often. Partially because. 



One standard puzzle is to 
find something in section 'B' 
that is needed in section 'A' to 
locate something that you must 
have in section 'C ! Again 
SAVEing at some point enables 
you to explore further down 
the 'chain to 'suss out' what 
may be needed back near the 
beginning. Most programs 
support the following 
commands: 



INVENTORY/LIST 
LOOK 



HELP 



EXAMINE/OBSERVE 



Displays all the items you are currently 
holding. 

Repeats the location description . . . worth 
trying if you have just 'done' something, 
you may see an object added to the 
original description. 

In some games this produces a clue (us 
ually cryptic), in others it repeats a set of 
instructions, and in still others you just get 
a rude comment! 

Very important ... if in doubt EXAMINE 
everything. Clues, hidden objects and 
solutions are the order of the day follow- 
ing this command. 

Displays current score, either as a number 
or as a percentage . . . can often give you a 



A grassy plain to the 
north . . . 

However well you may solve 
individual puzzles, or find 
valid clues — they are no use to 
you unless YOU KNOW 
EXACTLY WHERE YOU ARE AT 
ALL TIMES. 

Mapping is a personal thing 
and there are several different 
methods. Almost every system 
you use is going to call for 




Fig- 3 



r 





several large sheets of blank 
paper! Try to be logical in what 
you do and above all be 
consistent. I use a series of 
rectangular boxes which may 
or may not be joined by lines 
indicating whether there is a 
connection between the 
locations. 

Level 9 kindly agreed to me 
using 'Dungeon Adventure' for 
the following examples. First 
how to deal with one particular 
location (fig 1). 

The box represents the loc- 
ation which is the SOUTH END 
of an ISLAND. On the island 
may be found a magical MIR- 
ROR. The line at the south 
of this location has two 
arrows on it, indicating 
that I can move to and from this 
location in either direction. 
SIREN' by the side of this line 
shows a hazard or puzzle that 
has to be solved before free 
movement is permitted. 
'WILLOW' to the north, with 
only one arrow indicates 
another hazard, and as there is 
an arrow pointing in only one 
direction — this tells me that I 



cannot travel in those 
from the north end of the 
island! Lines with CROSS BARS 
at E,W,NE etc show that I 
cannot trav el in those 
directions. 

The two additional 
directions that you should try 
are UP and DOWN. I only 
indicate these if they are 
accepted. Looking at a slightly 
larger section of the map we 
have something like Fig 2. 

Leav e yourself plenty of 
room on the paper, so that you 
can record such things as 
SLEEP WELL' and. if you wish, a 
brief note on how to overcome 
the spell! If I find a location 
where I am moving to another 
'section', I usually write a letter 
in the box and start mapping on 
a new sheet of paper with the 
same letter in the location I 
have just moved to. 

Above all be methodical — 
check every direction. Some- 
times you may only travel in 
one direction from one 
location to another, so only 
one arrow will appear on your 
map (fig 3). Always check to see 
if you can return to a location 
by the same path. Fig 3 also 
shows how I record a path that 
doubles back on itself to the 
same location. 

So, we have the beginnings 
of how to approach a new 
adventure — moving an 
mapping. Next month we w' 
have a look at one of the 
adventure programmers 
favourite tricks — the maze. 
Again we must map it, but this 
can prove difficult and calls for 
a somewhat different tech- 
nique. 



Once again, we have 
browsed through our 
Commodore book 
shelves to bring you 



REFERENCE 

LIBRARY 



Book Title: 

VIC 20 Mind Stretchers 
Author: 
I. Creasey 
Publisher: 

Sigma Technical Press 
Price: 

£5.95 



DISGUSTED WITH THE HIGH 
cost of VIC 20 games filling the 
shelves of software retail 
outlets and prepared to spend 
a little time and effort tapping 
away at the keyboard? Then 
fork out the price of one game 
for this book of 30 'mind- 
stretchers' from Ian Creasey. 

These games seem to have a 
high destructive element. 
There are bombs galore in 
Bomber where your aim is to 
bomb buildings and land while 
avoiding the anti-aircraft 
missiles, Submarine where you 
have to bomb submarines from 
a plane and Dumper where you 
must protect an underground 
city from the aliens trying to 
bomb it. If your idea of fun is 
confrontation with aliens and 
assorted weirdos, then test 
your skills at Alien Attack 
where, while moving to the top 
of the screen, you must shoot 
the aliens emerging from the 
bottom. Munchers where you 
have to defend the town'sdyke 
from the Munchers and 
Zombies where you must lure 
the zombies into the pothole at 
the centre of the island. 
Animals also feature with 
Rhino where you must avoid 
being eaten by the rhinos while 
fleeing through the jungle. Cat 
and Mouse where you must get 
the mouse out of the maze 
without being eaten by the cat 
and Snake where you score 
points by eating up green 
numbers (why this obsession 
with eating?!). Mr. Creasey 
does produce the odd yawn 
with such well-worn numbers 
as Mastermind, Breakout and 
Connect 4. But the book is also 
spiced-up with such relative 



VIC-20 
MIND 




complexities as Awari, an 
African game of logic and 
Hammurabi where, having 
been appointed Hammurabi, 
you must rule the ancient city 
of Sumaria for 10 years. An 
interesting addition is Life, a 
version ot a simulation of the 
life of cells. The book 
concludes with a few useful 
utilities. 

Finally, although the 
introductions to the programs 
could be described as clear and 
concise, I failed to discover the 
'comprehensive notes' which 
Mr. Creasey promised would 
help in 'creating your own 
programs'. 



Book Title: 

Mastering the Com- 
mododre 64 
Author: 

A.J. Jones and G.J. 

Carpenter 

Publisher: 

Ellis Horwood Limited 
Price: £6.95 

















































InHB 



THIS BOOK AIMS TO 
provide those readers, already 
at home with the Commodore 
64 and BASIC programming, a 
deeper understanding of this 
machine and its capabilities. 

mmmm 



The first chapter reviews 
BASIC — BASIC keywords, 
arithmetic functions, string 
functions, logical operators, 
input/output statements. The 
reader is then shown how to 
facilitate BASIC programming 
through prints, string handling 
and structured programming. 
Arrays, binary searches and 
sorting methods are incor- 
porated into a chapter on data 
manipulation and BASIC is 
combined with the 6510 
microprocessor in a chapter on 
memory management. Sound, 
graphics and sprites are 
examined in detail before 
discovering what the 64 has to 
offer in the way of peripherals. 
The authors get to the heart of 
the 64 with a study of its system 
architecture, the operating 
system and the kernal. By this 
stage, the reader should be 
ready to handle machine code 
programming — the internal 
registers of the 6510, 
addressing modes, interrupts, 
using an assembler and a full 
nstruction set. An insight into 
the 6526 Complete Interface 
Adaptor, the RS232 and the 
registers of the 6526 chip is 
contained in the final chapter. 
Assorted appendices and 
listings complete the book. 

So, if you wish to expand 
your BASIC knowledge and 
fully exploit the possibilities of 
the 64, this meaty guide could 
be just what trie doctor 
ordered. 



Book Title: 

Putting Your 

Commodore 64 to Work 

Author: 

Chris Callender 

Publisher: 

Interface Publications 
Price: £4 95 



THIS SLIM VOLUME OF 
business applications enables 
the reader to put the 
Commodore 64 to work as a 



B 



business system. 

The first program. Word- 
screen, turns your 64 into a 
word processor, albeit a very 
limited one with 10 commands 
at your fingertips. Other 
applications included are a 
Database package whereby 
you can store and retrieve 
information on your Com- 
modore and Cardfile to replace 
your conventional card filing 
system. Be spared unpleasant 
confrontations with your bank 
manager by keeping track of 
your spending with Home 
Accounts and, for those of you 
with short memories, key in 
short or long term engage- 
ments with Planner of 
Calendar. Mailing List and 
Telephone Directory allow you 
to discard that dog-eared 
address book and Spreadcalc.a 
spreadsheet package, and 
Stock Control are provided for 
more serious business 
applications. The most useful 
programs in the book are 
chained together with BOSS 
(Business Orientated Software 
Svstem) at the end of the book. 

Although these programs 
cannot hope to replace the 
more comprehensive packages 
on the market, they should 
appeal to the business man or 
woman with limited needs and 
a low budget. 



Book Title: 

The Sensible 64 
Author: 

David Hightnore and 

Liz Page 

Publisher: 

Micro Books 

Price: 

£5.95 



THIS BOOK CLAIMS TO 
offer a less technical overview 
of the Commodore 64 and its 
various aspects than that offer- 
ed by the manuals. It is aimed at 
experienced programmers and 
novices alike. Presented in a 
very plain format and 
produced in a simple style, it 
proves that you don't have to 
depend on glossy pictures and 
obscure jargon to get your 
views across. 

The authors haven't 
produced an absolute intro- 
duction to the world of the 
Commodore 64: rather than 
covering the fundamentals of 
programming or summarising 
the capabilities of the 64, they 
launch into the subject of 
information input — tne GET 
statement and the various 
function keys. User-defined 
graphics and, in a fair amount 
of detail, sprites are then 
investigated. The delights of 



sal*** : 




c ^»»VDu». 




screen rolling, extended 
colour mode, high resolution 
bit mapping, X-Y co-ordinates 
and bit map graphics and 
joysticks are then examined 
followed by an insight into 
sound ana music on the 
Commodore 64. Information 
on disc drives and the graphic 
capabilities of printers 
conclude the book. 

To sum up, although not for 
those readers who don't know 
one end of a computer from 
another, this book, sensibly 
illustrated with diagrams and 
examples, provides a useful 
introduction to most aspects of 
the Commodore 64. 



Book Title: 

Getting More from your 
Commodore 64 
Author: 
Mark Harrison 
Publisher: 

Sigma Technical Press 
Price: £6.95 



ANOTHER BOOK CLAIMING 
to make some sense out of the 
Commodore 64 manual. This 



comprehensive volume takes 
you from abacuses and Charles 
Babbage through BASIC pro- 
gramming, high resolution 
graphics, sound and the 
relative complexities of 
machine code on the Com- 
modore 64. 

Starting with a brief history 
of computers, the book leads 
into a general overview of the 
Commodore 64. It then guides 
the reader through program- 
ming techniques, Commodore 
64 BASIC, the 64 functions, 
character set and string 
handling. Computer logic, the 
64's memory and character 
display mode are covered 
before handling the more 
intricate high resolution 
graphics and sprites. Bring your 
Commodore alive with a 
chapter on sound and turn 
your computer into a business 
system with knowledge of files, 
data storage and printers. The 
book concludes with informa- 
tion on data structures and 
machine code programming, 
and a list of useful appendices. I 
found particularly helpful the 
index to the programs used as 
examples throughout the 
book. 



There are copious intro- 
ductions to the Commodore 64 
on the market but this one 
seems to delve deeper into the 
subject than any of its rivals and 
should prove invaluable to 
those readers who feel little the 
wiser after scouring the 64 
manual from cover to cover. 



Book Title: 

Getting started on your 
Commodore/VIC 20 
Author: 

Tim Hartnell and Mark 

Ramshaw 

Publisher: 

Futura Publications 

Price: 

£2.95 



THE CREDIBILITY OF THIS 
beginners guide to the VIC 20 
lies in that one of the authors is 
a schoolboy — the category 
from which a large proportion 
of its readership is probably 
drawn. Unlike many so called 
'introductions', this jargon- 
free book really is aimed at the 



E 



332 



novice: anybody else may find 
the authors' approach rather 
condescending. 

The book starts where any 
self-respecting beginners 
guide should start — with an 
overview of the VIC's 
keyboard. It then guides the 
reader through the basic tenets 
of programming — screen 
input, editing and printing. 
Random numbers, loops and 
subroutines are explored 
before venturing into the 
world of sound and music on 
the VIC 20. Strings and data are 
covered before tackling PEEKs, 
POKEs and arrays. Finally, the 
reader is shown how to add 
graphics — user defined, multi- 
colour and high resolution to 
his programs. The reader is 
encouraged to make construc- 
tive use of his new-found skills 
with the sample programs 
liberally distributed through- 
out the book. 

To conclude, although this 
book won't teach you all you 
ever wanted to know about 
programming the VIC 20, it 
should give you the knowledge 
and confidence to confront 
some of the more technical 
guides available. 



Book Title: 

Commodore 64 — 
BASIC Programming and 
Applications 
Author: 

Larry Joel Goldstein and 

Fred Mosher 

Publisher: 

Prentice/Hall 

International 

Price: 

£7.95 



THIS BOOK PROVIDES A 
comprehensive tutorial' on 
programming in BASIC on the 
Commodore 64. The text is 
accompanied throughout by 
programming applications and 
exercises to test your progress. 

The book commences with 
an introduction to computers 
and a look at the 64 itself. The 
authors then take you, step by 
step, through the BASIC 
programming language. Each 
lesson is incorporated into a 
program and, at each level, you 
are encouraged to 'Test Your 
Understanding'. Before adding 
loops and subroutines to your 
programs, learning to input 
data and manipulating strings, 
and coping with random 
numbers, the major Com- 
modore peripherals — cassette 
recorder, disc drive and printer 
— are assessed. A chapter on 
filing on the 64 is consolidated 



with a do-it-yourself Word 
Processor. You are finally 
instructed to apply the 
knowledge thus acquired to 
creating graphics, designing 
sprites and adding sound and 
music to your appfications; and 



try your luck 
market with 



in the games 
a chapter on 
creating computer games. The 
book concludes by showing 
you how to enhance your 
BASIC programming with 
Simons' BASIC. 



The authors have produced 
a clear and informative 
introduction to BASIC 
programming on the 64, 
elucidated throughout by 
appropriate examples and self- 
test exercises. 





9 

4 



on 






E=' 








































CASH CONTROLLER 

COMMODORE 64 

HOME BUDGETING 
& BANKING SYSTEM 
ON CBM 64 DISK AND CASSETTE 



AUTOCALC 6' 

COMMODORE 64 

THE SPREADSHEET IN A | / 




A professional style multl function Cash 
Controller program. In disk format you can load, 
and make an entry ... or update your existing 
records ... In Just seconds. This easy to use 
program can handle up to 400 transactions, 
giving Instant statements of your bank balance. 



BANK ACCOUNT 

• Statements on demand 
from any date to date. 

t Holds up to 400 
transactions. 

• Standing order facility. 

• All transactions can be 
automatically coded to 
allocate up to 16 budget 
headings. 

• Search facility for any 
single item by description 
or amount. 

HOME BUDGETING 

• 16 budget headings, e.g. 
Gas, Rates, Car, Tax - you 
can choose the headings. 



• Highlights under/over 
spending. 

Full budget expenditure 
breakdown. 

• Budget "re-think" 
facility. 

LOAN/MORTGAGE 
CALCULATOR 

All you ever wanted to 
know but didn't like to ask! 
Calculates: 

• Interest rates 

• Payback periods 

• Capital sum 

• Period of loan 



• PRINTOUT FACILITY USING STANDARD 
COMMODORE PRINTERS OR SEIKOSHA 
GP100VC. 

• FULL SECURITY WITH PERSONAL PASSWORD, 

• SAVE DATA ONTO CASSETTE OR DISK USING 
1541 DRIVE. 



DISK £14.95 TAPE £9.95 (inc. P&P| 



CREDIT CARD HOTLINE 06286 6353 1 (24 HOURS) 



Please send me: 

Autocalc 64 DISK 

Autocalc 64 TAPE 

Cash Controller 64 DISK 

Cash Controller 64 TAPE 



at £19.95 
at £14.95 
at £14.95 
at£ 9.95 



(Overseas orders add El. 50 P&P). 

I enclose Cash/Cheque/PO. payable to Richard 
Shepherd Software Ltd. OR please debit my ACCESS/ VISA 
card No. 



I 
I 

Signature 
| NAME _ 

I 



1 
I 
I 
I 
I 
I 
I 



ADDRFSS 



CLASS OF ITS OWN 



Q ; Which spreadsheet is suitable for 
accountants, engineers, scientists and home users/ 
A: Autocalc 64 Is Ideal for any application Involving 
extensive manipulation of data and formulae from 
financial planning to market research. 
Q: Which spreadsheet offers an advanced level of formula 
handling? 

A: Autocalc 64 copes easily with trlgnometrlcal 
functions, parenthesis and boolean logic as well as 
totalling and averaging. 

O: Which spreadsheet accepts complex conditional 
statements? 

A: Autocalc 64 can handle statements as complex as IF 
aK4,000ORa1>8,000ANDa2 = 500 THEN bl =0. 

Q: Which spreadsheet offers a flexible screen format? 
A: Autocalc 64 allows you to select (I) column widths 
from 3 to 30 characters (II) the number of rows/ 
columns you need (ill) up to 2,000 cells of Information 
(iv) text or numerical entries lined up to the right or 
the left, or a combination. 

Q ; Which spreadsheet offers a choice of numerical formats? 
A: Autocalc 64 gives you a choice of (i) Integers (if) 
floating decimal point (Hi) currency (iv) any 
combination of these. 

Q: Which spreadsheet offers a full 'replicate' facility? 
A: Autocalc 64 has an advanced replication function 
for transferring text, data, formulae or conditional 
statements from any cell |or block of cells) to any 
other(s) without monotonous retyping. A go to' 
facility will take the cursor instantly to any cell of your 
choice — saving time. 

Q: Which spreadsheet is easy to use yet advanced in 
operation? 

A : Autocalc 64 Is designed to guide you — helpful error 
reports diagnose Input or formulae errors. A full 
demonstration program and comprehensive 
Instructions are Included. 

Q; Which spreadsheet is compatible with standard 
Commodore printers? 

: Autocalc 64 gives you a printout facility using any of 
these printers: Commodore 1515, 1525, MPS 801, 
1 526, MCS 80 1 , DPS 1101, Selkosha GP 1 OOVC 
Q : Which spreadsheet is 1 00% machine code for fast 
efficient responses, and offers a choice of saving to disk 
fusing 1 54 1 drive) or to tape using a C2N unit? 
A: Autocalc 64 — as if you didn't knowl 
Q: Which spreadsheet sells at a realistic budget price? 
A: Autocalc 64 costs Just £ 1 4.95 on tape, £ 1 9.95 on disk 
Inclusive of VAT and P&P. 
Q : Where do I get one? 

A: Ring us now on 06286 63531 (24 hours) to place 
your ACCESS or VISA card order, or complete the order 
form and send It to us today. (Prompt delivery 
promised). Autocalc 64 is available only direct from 
Richard Shepherd Software. 

CREDIT CARD HOTLINE 06286 6353 1 (24 HOURS) 



FUWHOUH ;j ?StUMlMOrTLANE CiWlNHAM UOuGm BEAKS 1L (06166)63*31 



Chris Palmer takes 
another look at MIDI 
and shows you how to 
set up a system. 



REVISITED 



THOSE OF YOU WHO MISSED 
last month's article must be 
wondering just what a MIDI is. 
Well, it's not animal, vegetable 
or mineral, it is in fact a Musical 
Instrument Digital Interface. 
What MIDI enables you to do is 
lo interface various musical 
instruments (usually key- 
boards) together. Information 
from one source can then be 
passed to another and vice 
versa. 

For many, the most 
important feature of MIDI is 
that it also enables you to plug 
these devices into a computer. 
This means that your computer 
can record what you do on any 
keyboard which is attached 
and, if you want, play it back on 
any otner keyboard which is 
attached. 

Because a computer is very 
good at manipulating 
information of any sort once it 
is stored in its memory, it isalso 
possible to edit or change the 
musical information. This is 
obviously a great boon to both 

Erofessional and amateur alike, 
ecause we all make mistakes. 
You don't even have to be 
able to play a musical 
instrument to use a MIDI/ 
computer system. The note and 
timing information for your 
composition can be entered 
using the computer keyboard 
and then played out through a 
MIDI device attached to the 
computer, a sort of space-age 
player-piano if you like. 

So, that briefly is what MIDI 
is. Now let's have a look at how 
to go about setting up a system. 

Setting up a system 

For the purpose of this piece 
we are going to take the 
Commodore 64 as being the 
basis for our computer/MIDI 
system. Why the 64 you might 
ask? Well for the simple fact 
that the 64 is one of the most 
66 popular computers around at 
the moment, and therefore a 
lot of the development of MIDI 
interfaces and software is done 
for the 64. So, having agreed 
that the 64 is the heart of the 
system, lets consider what we 
need in the way of a mouth. 



E 



When buying an interface 
of this sort, you have to apply 
similar criteria to when you buy 
a computer: chiefly, what 
software is available. You don't 
want to land yourself with a 
system which isn't going to 
grow with you. 

A lot of the companies 
producing interfaces are 
themselves producing the 
sotware to accompany them. 
This at least means that the 
software will run alright with 
the interface, but it does create 
other problems. Because the 
software authors are so 
involved with the design and 
development of the interface, 
they often lose sight of the fact 
that it is the ordinary punter 
who is going to have to use the 
thing. Quite a few of the 
packages which I have seen 
nave been less than friendly in 
places. Moreoften than not the 
documentation and examples 
given in the manuals are 
misleading as well. 

Given that we are a nation 
of tinkecers, it might also be 
worth your while finding out 
how accessible both the 
software and the interface is to 

Crying programmers. Who 
nows, you might even be able 
to sell your creation back to the 
company. Try and find out 
what the companies' future 
software plans are, and 
whether any other software 
companies are writing for the 
interface. 



Ins and outs 

The purpose of an interface is 
to pass information from one 
place to another, so let's have a 
look at what your interface 
should have in order to talk to 
the outside world. 

For a start it should have a 
five-pin DIN socket labelled 
MIDI OUT. This is essential 
because, without it, your grand 
composition will have no way 
to travel to the keyboard in 
order to be played. Don't 
worry if the interface has more 
than one of these, it just means 
that the interface can talk 
directly to more than one 
keyboard at the same time, 
without having to resort to the 
rigours of MIDI THRU. 

If you want to be able to 
send MIDI information to the 
computer from a musical 
keyboard, then you will need a 
MIDI IN. This works in the 
same way as a MIDI OUT, only 
backwards. You should only 
need one of these, because 
unless you are a closet Rick 
Wakeman. it is unlikely that 
you will be using more than 
one keyboard at a time to 
program the computer. 

Though not essential, 
another connector you should 
look for is SYNC or CONTROL. 
With one of these you will be 
able to play back any 
compositions in time with an 
external source. More often 
than not this will be a drum 



machine or rythmn box, which 
provides a trigger signal out for 
just this purpose. Unfort- 
unately you can't synchronise 
with a real drummer, as these 
will no doubt take exception to 
having a jack plug rammed up 
any available orifice. 

The last connector you 
might run up against is one 
labelled MIDI THRU. What this 
does is provide an exact copy of 
the information being passed 
to the interface via the MIDI IN 
socket. The real advantage of 
MIDI THRU becomes apparent 
more on the keyboards than on 
the interface. Using it you can 
'daisy chain' several keyboards 
together in such a way as there 
will be no discernable time-lag 
between you playing a note on 
the first keyboard and it 
sounding on trie last. 

Above all when buying the 
interface, make sure that it will 
do what you want and, if 
possible, have it demonstrated. 

Sorting out the 
software 

Carrying on our journey from 
the heart, via the mouth, we 
arrive at the brain. Here really is 
where any system stands or 
falls, on the quality of the 
software. It is very difficult to 
lay any firm guidelines here 
because everyone has a 
different idea of what they 
want to do with a system. 




Hardware 




► % * * • 




Al the moment MIDI 
software falls into two 
categories: composer pro- 
grams which record, replay and 
edit musical information which 
is sent down the MIDI bus 
from an external keyboard, and 
those which perform similar 
functions, but who take their 
input from the computer 
keyboard. 

The prime consideration for 
any program is the amount of 
storage space that is available 
for the note information. It isn't 
worth having a program which 
can drive 16 keyboards, edit 
any part of the tune and make 
the tea, if it can only hold ten 
seconds of music. For a 
composer program to be any 
good you need to be able to 
write more than one part into 
it, and then have them played 
back simultaneously. If you are 
after one of these 'multi-track' 
packages, then find out the 
limits of how many tracks you 
can use, against how much 
note information can be stored 
on each track. 

If the package does not use 
a MIDI keyboard as an input 
device, find out what system 
you have to use to input the 
note information. It would be 
pointless buying a package that 
uses standard musical notation 
if you do not know how to read 
music. 

If it is a multitrack package, 
then find out whether each 
track can be sent to a different 
keyboard as one of the big 
bonuses of a system like this is 
the ability to write on one 
keyboard and play back on 
many. Above all, when you 
choose the software, have a 
firm idea of what you want to 
do already in your mind and 
then make sure that this is what 
the package can do. 

Choosing a keyboard 

Leaving the body now 
(probably through the nose) 
we journey into outer space in 
search of the device which is 
going to turn our wonderful 
composition into reality. 

Be warned, the syntnesiser/ 



keyboard market is nearly as 
bad as the Hi-Fi market. Walk 
into any music shop and you 
will immediately be assaulted 
by row upon row of shiny 
keyboards, crammed full of the 
latest in LEDs, LCDs, VCFs, 
sliders, benders and triggers. If 
you ask a shop assistant for 
some help you will soon realise 
that the computer industry Is 
not the only place that survives 
on jargon and buzzwords 

For a lot of people the 
criteria on which a keyboard is 
bought is purely price. The 
problem is making sure lhat 
you're getting the most of what 
you want for the price. 

Obviously, the prime 
condition that the keyboard 
must satisfy is that it must be 
MIDI compatible. Like the 
interface, it must have both 
MIDI IN and MIDI OUT 
sockets. Find out whether the 
keyboard can change the MIDI 
channel it responds to. This is 
particularly important if you 
intend to use more than one 
keyboard with the computer. 
For instance, if you have two 
keyboards with the same MIDI 
number attached to the 
computer, it will not be able to 
differentiate between them. 
This destroys the advantage of 
being able to play back a piece 
of music, with different parts 
being played on different 
keyboards. 

If you are not yet 
conversant with how a 
synthesiser works, it would be 
best to buy one of the MIDI 
equipped piano/organs which 
are on the market. If you intend 
to get into synths as well there 
are plenty which offer pre-$et 
of pre-programmed voices 
whicn will get you going. 

Find out what information 
the keyboard sends out via 
MIDI. This can range from only 
the note value and duration, 
right up to the parameters that 
make up the sound. 

As a rough guide the 
keyboard should send the 
following information: the 
notes which are being played, 
the position of the pitch bend 
control (if it has one) and any 



voice/program changes which 
occur. With this information 
coming through MIDI you 
shouldbe able to record on the 
computer every aspect of your 
performance on the keyboard. 

It is best to check that the 
keyboard will work with your 
computer/interface/software 
as some combinations will not 
work, despite the fact that 
MIDI is supposed to be a 
standard. 

What's around 

Hopefully now you will have 
more of an idea of what you are 
after when putting together a 
computer based MIDI system. 
To help a little further, here are 
some interfaces, keyboards 
and drum machines which 
would be a good place to start 
yourself off on the road to 
computer composing. 

Interfaces 

Sequential Circuils Model 64 
Sequencer 

This contains all the operating 
software in ROM and plugs 
into the expansion port of the 
64. It has MIDI IN and OUT 
along with facilities for 
syncronising it to an external 
source. It can be programmed 
in real-time ana offers 
multitrack recording, editing 
and auto correction. It has a 
capacity of upwards of 4000 
notes in real time. Proposed 
software updates include step 
time input. The price is 
between £150 and £180. 

Siel MIDI Computer Interface 

This interface comes supplied 
with a two way adapter which 
will fit both the 64 and the 
Spectrum. It features three 
MIDI OUTputs, one MIDI IN 
and a MIDI THRU. It also has a 
control port for external 
synchronising. The software is 
available on disc or tape and at 
the moment comprises a six 
track monophonic sequencer 



where the note information is 
input from the computer 
keyboard. Also available is a 
sixteen track real time 
sequencer in which each 
channel can be assigned to a 
different MIDI device. The 
price of the interface is around 
£99. 

Keyboards 

Korg Poly 800 

This is an eight note poly- 
phonic synthesiser with 64 in- 
ternal memories. The sounds 
are a little thin sometimes 
but are on the whole 
very good. The MIDI 
cnannel can be changed and is 
implemented througn a MIDI 
IN and MIDI OUT socket on 
the back. The Poly BOO is 
available also in the form of the 
EX800 which is a keyboard-less 
expander unit. Its features are 
virtually identical to the Poly 
800 except lhat it lacks the 
keyboard and the bend 
control. The price for the Poly 
800 is between £400 and £450 
and the EX800 between £300 
and £350. 

Siel MK900 

This brand new keyboard from 
Siel features 10 preset sounds 
of which any two can be split 
between different places on 
the keyboard. It also features 
an inbuilt rythmn unit which 
can be programmed. The 
quality of the sounds is quite 
good considering the price of 
around £449. 

Drum machines 



Yamaha RX15 

A very good digital drum 
machine which can actually be 
played from a keyboard via 
MIDI. It has the interna 
memory to store 100 patterns 
and 10 songs made up of 255 
parts. MIDI IN and OUT are 
provided, making it possible to 
record and play back patterns 
using a computer. Price is 
around £450. 



E 



MULTIPLE 
FILECOPY 



a long process. Take 
out the strain by using 
this program from 



68 



IF YOU OWN A SINGLE 
disc drive, you will soon 
come across the problem of 
backing the disc up. Even if 
you own two drives or have 
access to a twin drive, there 
is a need for a good, 
selective back-up pro- 
cedure. There are several 
program s available to do 
this but all of them require 
several disc changes. In fact, 
the minimum number of 
disc changes for backing up 
an entire 1541 disc is three 
because the Commodore 64 
can hold about 62K of data 
at a time and a 1541 disc 
holds about 165K of data. 

Another problem with 
these programs is that thev 
are often difficult, conf- 
using and clumsy to use. The 
enclosed program goes 
some way to solving these 
problems. You will notice 
that apart from actually 
reading a file and writing a 
file, the program is written 
entirely in BASIC thus 
making it easy for you to 
improve on it and aad your 
own extra commands and 
functions. If you select one 
of your discs that you 
require to back-up, you will 
probably find that you only 
really need to take a copy of 
about half the files 
contained. This will arise 
due to several reasons: 
perhaps you alreaady have a 
copy elsewhere, there may 
be several versions of a 
program you are writing on 
the disc and you only need 
to take a copy of the latest 
one and so on. 

Drive on 

The program will work for a 
single drive, two drives on 
different device numbers or 






MULTIPLE 

JLECOPY 

lAinnibrE 



for a twin drive. The facility 
is given to header the disc 
you are copying ontoso you 
may use a brand new 
(unformatted) disc. If you 
have a single drive then you 
will simply press Return 
over the first four questions. 
The directory will be read in 
and listed to the screen. 
Displayed will be the file 
name, the file type and a 'y' 
against each name to 
indicate whether to copy 
the program or not. Trie 
program will not copy 
relative files. You may now 
cursor up and down the 
screen and enter 'y' or 'n' 



against each entry. If you 
cursor off the top or the 
bottom of the screen 
(assuming that there are 
enough entries) then the 
display will scroll. If you 
press V or HOME the 
cursor will move to the top 
of the screen. When you 
have finished, press the 'e' 
key. 

Having pressed 'e', the 
files to be copied will be 
listed to the screen with the 
amount of space taken by 
each, then trie total buffer 
size and the difference 
between this and the sum of 
the programs' size will be 



printed. The chance to re- 
edit the list is then given. If 
there is enough buffer 
space then the answer to 
this question is defaulted to 
'n'b. If there was not 
enough space then an error 
message is printed and the 
answer to this question is 
defaulted to 'y'. 

The copy will proceed 
when you are ready and at 
the relevant time you will be 
prompted to insert your 
destination disc. Any disc 
errors are reported and if a 
file already exists on the 
destination disc, the option 
to overwrite it is given. 



64 Utility 



Getting lined up 



Lines 100 to 140 in the 
program listing bring down 
the top of memory (which 
you will have to reset having 
run this program), set a 
pointer to where to put the 
machine code and also set 
the buffer start and end 
points. The buffer is the area 
that the files from the disc 
will be stored in. Note that 
the full capacity of the 
Commodore 64 's memory is 
not being made use of here. 
Also note that by changing 
these pointers, this program 




will run on any Commodore 
machine. 

Line 150 allows up to 80 
files to be read in from a disc 
which should be more than 
enough. If it is not enough 
the program will crash with 
a bad subscript error and 
you will have to increase all 
of the '80's on this line to 
cater for this. 

Next in the program, the 
machine code is read in 
from the data statements at 
the end of the program and 
POKEd into RAM. This 
machine code simply reads 
a complete file (sys p+3) or 
wriies it (sys p). 



Lines 200 to 300 ask for 
the information about your 
drives and gives suitable 
defaults. The directory 
pattern is the same as when 
you load a directory from a 
disc. Thus 'fi*' will return all 
of the file names startin 
with 'fi', '*=p' means a 
program files and so on. 

Lines 400 to 599 read in 
the disc directory. If you 
look at this closely you will 
get the idea of how the 
directory is stored on disc. 
Line 460 is calculating the 
file length for instance and 
lines 490 to 500 get the file 
name. 



Lines 600 to 699 allow the 
editing of the program 
names. It is here you could 
perhaps add another 
function — maybe one to 
make the cursor go to the 
bottom of the screen and 
then to the bottom of the 
list. 

Lines 700 to 799 list your 
selected files to the screen 
and check on buffer size 
etc. and lines 800 to 2000 
actually do the copying. The 
data at 61000 is for the 
machine code and lines 
63900 onwards save this 
program to disc keeping 
one back up copy of it. 



Program Listing 



re- 
run 
rem 

i fin 

rem 
f em 



mull i p I • I i I* copy 



own manderlield )/g» 
grahame a.-m 7 fit 



i rem 
i rem 
: rem 



lop ol mem • »J00O 
cote Had ■ 5)000 
buffer start ■ $1100 
bullet end • SeQOO 



100 rem 

110 .„■.,•<.«..... 

in p.vton 

1)0 bt> )**09(> 2*21* 
1*0 Be- I0->09( 

1)0 dim li«<IO).IS(IOI,lt$(IO),<(S(IO),pl<IO).p2(IO. 
1(0 pl>p irem poke up machine cote 

170 reada. la<999thenpokei I ,a ipl >p I • I iioio 1 70 
200 primchrSlU7)chrS<l*>"MulIiplt Pile Copy Prog.* 
20) prim-b, C-»n Mandvr I le I «* ipr ml 
110 prim- Source driee 0" 

120 prim" Damnation drive 0" 

I* 
I" 



1)0 
2*0 

210 

2*0 

270 
100 
SOI 
)I0 
)20 
no 
)»o 
>S0 

1*0 
HI 

170 
)IG 



uni I 



pr I ni ■ Source 
prim" Oeiiination 
prim- Directory pattern *.p* 
pr<ni~Ne* Dettination Disk rt" 
prim" Oitk header name n/a* 
pr inlt hr S( I9)iprintiprift( 
rem-«SSR left • No. > Hint press 



■ It Cor tor No. 

1*1 < •»-nd 
ieli M>-|dd 
lelt *)>"tm 
left ■>''.'. 
*.p<CRSR le 1 1 ■»>-idp$ 

n<t»SH lelt *)>"in^ 



I imei 



a<a>v 

Q'CHS* 

■«n 

KOUB 



1- lelt •«>*lhS 

lelt *)>"ieS:ilaS<>"y"th«n)QQ 



inpul" Source drive 

input- Destination drive 
input- Source uni I 

input' Destination unit 
inpul* Directory pattern 
inpul "He* Destination Duk 
if n$<>-y*tnenpr int igo to 310 
Inpul- Oitk header name 
pr i ni t input -Correct ■ ICHSfl 
1)0 open I*, lu, I Si open I S.du. I S 

»00 pr int i pr int i -Reedi ng Source Directory-iprint -Pre 1 1 
•10 openl.iu.O.("$--rlghlSUtrS(*dl.l>."i-.dpS> 
■ 20 inputfel* .a.eS.b.ci ilaiOthenvbO 

»)0 c loie 1 1 pr int *Di tec I or y Error - "a" ,"aS" ."b" . "c tend 
».0 getfl.aS.aSinO 

»)0 gei#l ,aS.hS.(S.dSi. l*$.bS---then*»0 
»S2 eetaSiifaS-* "thenStO 

»(0 Il*(il.a*<(c$.chr J(0)l.2»a-a.c(dS-ChrS(0H 
*7Q O 1 -oraS>chr$(IS)then*70 

•10 fS(t)**'iif*S<>chrS()*)theniSl i)-a$ 
t*0 .- f . ■ ■ :t $( )*) thenllO 

»9) .:.<':.-:.$-- "igotoDO 

)O0 ■S(i)<l$(i)-aSigoio*90 
SIO gei»l.bSi.lbS-- -tnenSIO 
170 geiaM.aSi ifaS>-"thenbS.bS-a$!goio)20 
S)0 bS.l.llSlb$, !):(!$< I i ifb$.-rel*lh*n*10 
1*0 aS.rlghiSlstrSli).!).* ".leltSUSf i>." *.I7( 
SO .S.*S-leltS((tS(i/.)>." -.>ight$<" *.Hf$(ll»( l )■!>♦.), 51 
SSO pr inlaS.I I Si i );•$ 
S40 i.i.l igoioOO 
SSO clotehnl.t-Z 

»00 pnntchrSIUJIi'Select tiles to copy- ipr i ni "OK 
■01 l»l 
(02 b.IOll tnl CHlkltlail 
(OS a- I .go*ub(10igoto420 

(10 tor i-.tobipr.nl I IS( ( ) tab! SI )ri|htS(f iS( |t. I )!ne.t .return 
(10 printchrS(l»»ipriniip. intilori.lionf 

(» ^!as!!lis!--tnen.lo U, "''' n,S< ' ,S,,, ' nChrJM **'''*" °" " Bd 011 
4*0 lte$<>-y*ora$<>-n*then(SO 

(») ItSOI.Ief tSdtSt i >,)).a$ip< inichr M MS)tab( )l >a$!ioto(90 
(SO pr intthr S< US) tab< )l > r t gh t $( f i S< i 1,1) 
((0 if*S<>"*"endaS<>ChrS(US>or ..Jth*n(7Q 

((7 i.i-7ipr intthr S< U1)chr$( US); 



SPAC£ lo Stop-:prlnl 



irem end ol directory 
irem hit space bar to force end 

irem aS ■ ipace or tVi on 
irem ch>$()*» * quote '■■ 
■van gel file name until quote 
■ rent ditto 
i rem ditto 
irem don'l want space* 



ip/Do*n V,N or E-ipnnt 



liiln-liif |n>0o<nf<2)lhen49S.iem cursor up 



((* «.i t lie*i<Z*;goiub(IO:pr lnlchr$( I9> l i In. I igo I049S 



(70 

(7S 
elO 
(90 
(92 
(9S 



i ire cuir or up 

itai.(hrS(77)oraS--e-thenl.999igoio(90 .rem preiiad e lo end 

ilaS-chrS(l9)ofa$.-h-iI»eni.0iprinichrJ<l9)|i|olo((9 irem preiied h or home 
ifaS<>ch r S(l))a n daS4>chr(l71ihenprl»ich>S(l«S)|ii.i-li l oto(9S.rem illegal key 
I f tail thenpr intchrSt . - • . 
If tn<2*thenlnifn>l 

he-' • ..em clear k.yboaid buffer 

700 pr>mchrS<l«7)*Pile* to Copy i I ll -0t tb.O 
710 lor • ■■ Y ■'. ■ ■ •n'ihen7S0 

720 tl.tf-l:lb.lb<2S**llttll) 

7)0 prlntrightS<itrS(tfl.2(- *fS< I )tab(ZS)leflS(ft$( i >.1)i 
7»0 print- "nghliC -. 1 1> St f l*< i l»2S« ) . S) 
7S0 ne>i ipr int ipr ini -Total Pi let ."H- . 'lb-Byte** 
7(0 print-Buffer .lie >*b*-ai*. Free ■'bcBi-lb 
770 *S.-n"i i ( be-bt-ibXOihenpr int IN mt-But for Too Full*iaS«"y" 
710 printtpriniDc.Edit Lilt -*$ch'5( I S7)ehrS( I S7)chr J( I J7I ■ 
712 inputaSi 1 (as<>-n*than(00 

7IS ilbe-b>i-tb<0lnenpr int tpr int 'Buffer Too Ful I go to 2000 
790 priniiprint-Procede »nh copy y-ehr Si I S7)chr J( tS7)chr S< I S7) i 
79S i npu ia$ 1 1 f a$<>-y- 1 he "end 

■00 pr int ipr ini Heading Filet From Source Duk' 
■10 tf iO.plxb.ip2.bi 

■20 lori.|ionfiltriihiS(fi$(.).|)<>-.-ihent90 
■ )0 If. H. l:prinltftab(*H$<i)| 

■3S openl.. u .).(mid$(t(rS(td).2l.-i-.fS(l)**.-.lefl$(fti(i),l)) 
■*0 inputdPia.a.aS.b.ciprinl* - **S: i t alhenc loie 1 1 go IO2000 
»S0 prini'Hait"pliipoke*al.pl/2S(ipoke*»0.pl-2S(*peak((*l) 

■(0 rem no* load buffer Harting at (*0,(*l note end addr returned in (*2,(*) 
170 iy> p> )ip2>p*ekl(*2l<2S(*pe*h((*)> ipr int - End~p7 
* -.a$,b,ciitath*nprinia$.c loie I iMlblOffl 
l( I ). p I . p7I i t>p2iplip7iclo*el 
■90 ne.l 

900 iftdOdd or tu<>duihen9*0 

*I0 pr in t ipr i nl 'Place Oeiiination Duk in Drive* 
920 inpul-li Di<k Ready y<C»SR left *S>-|aS 
»>0 i fa$<>-y-then9IO 
9*0 ilnjo-y-ihenl000 
1000 pr inlipr mi~*r i t ing FI 



■ 75 
1(0 



le* to Destination Dim' 



1010 
1070 
10)0 
10)) 
10*0 
10*2 
10** 



>bt i p2'bi 

for i ■ I ton I . i f r i ghl Si f t S( i >. I )<>"y-t ben 1090 
Ifetfellf lS.-,--leltS(ltS<H, t )•■,-.' 

printtftab(*)fS(i)|iopenl.du,I.(midS(ti'S(dd).2)*-i->fS(iNflS> 
i " S,a,aSib.cipr inttabl20)aS.i ta.OthenlOSO 
cloteltifa<>()then2000 

input-File ttnli Replace y<CRSR lelt • )>" iaSt i f aS""y-!hen 1090 

prinl#IS.-t-.mld$UtrS(dd).2).*|-.lS(lligOtOlO]0 

pl'pl(ilip2:p2(i)iprtn|-tiari-pli 
poke(*l ,pl/2S(ipoke(*0.pl-2S(*p*ek( (*l ) 
poke(*S.p2'2Stipoke(*?.p7-]t(*peek<(*)liiyt p 

*y* P irem set start and end address and transmit 

I07S pr mi- End*p2 

10(0 inputM».a.a$.b.t;p'intaSiilathenclos*l>goto2QQO 
1 990 c lose I .nei t 

1100 pr mi .pr mt -Copy F i n i ihed" le nd 

2000 print.i - ■ ABUttTEO* i end 

data 2*. I **.*(. I '). 121,2, 1 11.91 

data 17). 129.2, I S). 99, 1(2, I , 17 * 
tela '2,221. 2SS.I4S 

d.ia 91.2)0,91, 101.2.2)0.99. 1(S 



I0S0 
I0SS 
10(1 
1070 



tela 
data 



(1020 
(1010 
(10*0 
(10)0 
(10(0 data 
(1070 data 
(1010 data 

(1090 date 
(I 100 data 

•> 1 1 10 data 
41120 data 

4S900 open 



I SO. 2*0. 2)9. 1(1,91, 1*1 . 1)0.2 
US. 99. 1*1 , 1)1.7. )2, 20*. 2SS 
94.17). 121, 2. I)). 91, 17). 179 
7.I)).99,I(2,I.)2,20I,2SS 
1(0,0.177.91. )7, 710. 2)), 2)0 
91. 201, 7. 2)0.99, 1(1,91. 20) 

I )0, 2. 20I.7K, U). 99. 20), 1)1 
2, 20«, 229. )2. 70«.2SS.94, I '0 



I Si tS*'mlc(*-ipiinia*l ,-.0i *IS 
t)970 ■ - . "t S~.bak:-f S.gotub4)940 

09*0 sa.ef-Oi-. tS).t:gosub()9(0iend 
4J940 geiMI .aSip'intaSii ilaSOchrSf i))incn()9(0 



bak"igoiub()9(0 




unexpanded VIC 20 
game from Andrew 

■■■■ 

The aim of this game is lo shoot 
as many aliens as possible while 
dodging ihe stars. The game is 
operated with the following 
keys: 

J = Left 
K = Right 
Z = Fire 

Alternatively, you can use a 
joystick with the fire button to 
nyperspace. 



SPACE 
BATTLE 



Line number 
3 

6 
9 

14-16 
18-22 
23-24 
25-34 
35-44 

44-54 
57-60 
61-66 

67-72 
77-90 
100-108 



Action 

Prints your score and the 
number of lives left 
Draws approaching stars 
Draws aliens 
Moves your ship 
Reads keypress 
Controls shooting 
Sets screen 

Sets your shooting and goes 
to instructions 
Instructions 
Starts game 

Gives score plus play another 
game routine 
You get killed 
More instructions 
Sets data for graphics 





/ ■ . 



Vic Game 







Program Listing 



: 001078 

3 Mim-«C -$.8PC<S>-LV -, FOB I- 1 ICV PSINT* , " , NEXT P0KE214.21 PRINT RETURN 

4 J-l 

3 FORI*>1TOU 

6 P0K£B'22->RNTJ(T1>,46 NEXT 

7 00SUB3 

8 F0RI-1T0U 

9 l-RN0<TI)t2e 1FKU4STMEN30 

10 |F(K2TMENF0IH-nO5« NEXT 

11 POKES- 32 WIN! 

12 G0SU83 

13 OCTRt Jl-f«K<M) POOR*. 127 J2rf«K<PB> P0KERB.233 

14 lF(»tf--J"«<JlHHD16»-e>»*I«>79oeiMEN«-H-l 

15 lF<M--K'0»«J2*DI28--e)FWDfl<7921TMtH«-B.l 

16 1F<H«-- •'0B<JlfWD8)-e)IKN18 

17 001028 

IB lFKV-WNrNI«r»eMHV-l MT-MT.l 00 T 02 7 

19 IFHV-ITHENHY-0 

20 IFHV-1IMEK27 

21 IFPEE»<rt>-4«TH£Nfc8 
12 POKER. 39 

23 LK"PEEK(»*22> L0-PEEK<R»44> Jl-PEEK<Pft> 

24 JFL0O32«ND'A»-' , Z"0RtJlRHD32i»*'«HM.0<>46ANDL'O46THEN34 

25 IFL032TMEN2? 

26 IF<LK"460RL'»6lORLK-620RLt-6<>;TMEH65 

27 »1 IF.K2O0TMEN5 

28 U=U«1 00104 

29 POKEW.0 

38 ii-B>iHT<2i»*mD<ii'> rn-PMD<Ti> 

31 IFTM>.4TMENBOkEn.60 POKEN.30720.6 GQT0I I 

32 1FTH>.IT»«W>0»EN.61 POKEH-30720. 4 00T011 

33 P0KEN.62 POKEN»30720.5 00TO11 

34 L-R>44 

B lFP£EML>"60THENS-S-20 00TO38 
36 IFPEEV<L)*6inCNS-S>4e O0TO39 
62TMEN">»S-60 00TO38 

P»EL.42 POKEL'30720. 1 

39 lFFG-0HNlJS>"730THENLV"l.V*i FO-I 

40 P0«EV. 13 

41 F0RI-222T0238STEF2 

42 PO-EL30 POKEU.l R0KEL.32 P0KEL.3© P0»EM.fl "EXT POKEL-22. W 

43 G0TO27 

44 PBIHTTT POKEX,9 PRIHTTAB(3""IBIim.TRUCTlONS* PPINTT*B<6>-*"#)IE[J 
43 PPI»TTRB<7)*«- VClj" 

46 PPlHTTFlB<7j-nca 26 PTS" 

47 PPIMTTfiE i 40 PTS" 

4Q *»IMT t«B' f > ^TS* 

49 PRINT-BfcCORE 730 FOP EXTRA ,' 



37 IFPEEKa; 

38 POKEL-22- 31 



0 PRlMfBVOU CRM 00 MVRER-sfACE* PRINP'ONLV TUICE" 
"PINT-BVOU HOST FIRE «T THE- 



FOPI-ITOIO000 
FRIHT-.TtC - 
PRINT-IP -■ 
FP1HT-B ■ ■ 


ICXT G0TO2 
SPRCE BATTLE 


»*■ C 


BETURN 


nwiMi* ""inr-.r mrt.-. 14 b» 
»QRI"1T024 PR I Ml NEXT 


.1 i 





PPIIIl-FRONT C* 'HEM' 



io=o H-r«n E-diC4 



38 0Oy)B3- FOPI-1TO.-O0 HEM RETURN 

5» KKER-23.2S POKEfl-22.27 POKEA-21,^9 Fi>X2l4. 18 PRINT RE'UPH 
(0 KKEX.23 GCSUB3) 

61 F*[HT-«BO V9-J WORED "S 

62 IFS>HITMENHI«S 

*3 PRUIT-M8 HIGH SCORE "Ml 

64 PR|IITTRB-4,''M-PlAY RGAJN V/H- 

63 OETM :FM-""T>«JI65 

66 lf8I»-H-THENl« 

67 »9«FRE(0- 00T01 

68 FOKEA-30720,4 POKE36&77.128 
F0RI-13T0OSTEP-I 

re pobxv. i 

71 FOkEA.30 F0PO-1T0W MEXT POKER, 42 « 0*0 ■ IT 030 NEXT NEXf 

72 IV«LV-| R.79I1 

73 IFRIOHTITl^'O-TS-THENlOO 

74 POKE36877.0 POkEY 0 POKEX. 14 PRINT-X 
73 1FLV-OTHENOO1O60 

76 GOSUB39 0CSUB3 

77 FORI-ITQ800 NE>T OOT013 

78 ROE 36679,217 BOX650 129 Z**"8V RHDREU KWTH' 0OSUJ53 

79 F*IMTTHB(3'"W2f 

68 '*l MTTRB<3<"BBX>E JOYSTICK QR- 

51 PPItlTTRB<7;"«lJ LEFT* 

82 RRINTTRB'7."* RIGHT* 

&J PBIMTTRB'7>"«Z FIRE' 

34 P»INTTRB'3 ••'•SPflCE HYRERSPHCE" 

85 PRINT 'rati ENTER SMU 1-6* 

£6 CETRI !FA1»"-thEH86 

87 IFflSC<A*X490RASC<fW'>34THEir>: 

38 U-VflUnl.> MT-0 

89 RPiH'irtB' i8?-iru o»so ifrtmtheh; 

38 PRIIITT(4B<3>-WTn PLERSE MBIT" 

91 KKE9 1.255 PQKE52-27 P0t£S?..255 P0KE56.27 POKE214.U U.R WHMX<214* RT"I 

92 U«36876 X- 36879 V- 36678 2t«"B¥ RIIE*EW MOTH" P*"37l3l PB-37132 »B»37134 
A.0 

93 F0PI«OIO472 POKE7163-l.PEEt> -2768-1' MCXT 

94 F0RI-OT03I 
93 READS 

36 MKE7C41*I.R hEXT 

97 FOP1«0TO33 REROA P0'E7?84* I R ICXT 

98 POKE 36869 . 233 POtE36866.IEf I 368*i6'0Rli8 00T044 
IA1A60. 24, 133-233. 133,24,24-8 

J00 DATA0. 24-68. 126. 233-24. 36-66 
181 DATA24. 68, 126, 253-219,193,126. 66 

102 BA1H24. 60-102.231-233.36. 66. 36 

103 DATA253. 255. 165255. 233, 255. 129-0 

104 DATM8. 1.63, 127.213-233, 1J7-63 

105 K-TA0, 128,252,^54. 171.253.234.232 

106 CATA82,8. 133.32.4. 143.4.82 

107 EATA8. 4.2,4,8. 16.8.4 

108 POKE63O.0 P0KC36869-248 POKE36866, 130 
RERDV. 



P(* EC 



E 



Dave Burnett helps 
Your Commodore 
readers to design your 



DESIGN 64 




TYPE IN THE PROGRAM AND 
save it before running it. Ensure 
that the DATA in lines 1140- 
1210 are typed in accurately as 
this is used in a routine that 
Dlavs an important part. 

This program contains 
a routine that transfers both 
character sets into RAM 
starting at 12288. The BASIC 
program (well REM'd) 
occupies RAM from 2049 to 
10275. As the operating system 
uses spare RAM for BASIC 
Variables etc, the pointer (End 
of BASIC) has been set by 
POKING 56 with 65 protecting 
the program and the Character 
Data. 

The program makes use of 
the Function Keys (1-8) and also 
uses the CBM Key in 
conjunction with the Function 
Keys giving a total of 12 
controls which are displayed 
on screen, with general 
instructions (LINES 1300-1710). 

When run the program 
transfers ROM to RAM via the 
machine code routine (LINES 
1130-1210). useful in itself. 
Characters 0, 254 and 255 (in 
both POKE sets) are used. All 
other characters can be 
changed. 

The screen displays the 
character number (as well as 
the character) and the start 



address (in RAM). Having 
selected the set and the 
character, keying F5 will display 
an 8 by 8 grid on the left, an 
enlarged version of the 
character and the data making 
up the character. A second 
empty grid is then displayed 
and a new cursor (non- 
flashing) at top left. This curosr 
can be moved up, down, left 
and right (with wraparound 
control). Stop moving the 
cursor and press the fire 
button; the cursor becomes 
solid. Now moving leaves a trail 
which can be turned into any 
shape desired (press fire button 
again to revert cursor to 
normal). 

When finished designing 
your first hew character, keying 
F7 will set it to memory and you 
can see the result (if satisfied); 
keying F8 will transfer the 
machine code routine and 
your new character to tape, 
provided you have a tape ready 
(changing this to disc use 
would be straightforward, see 
LINES 6000-6240). 

Then "proceed with your 
next character etc saving each 
in turn on the same tape 
(second and subsequent 
savings); save only character 
data. Each character is saved 
separately (OPENed and 



VARIABLES USED 

FK — Function Key (PEEK ADDRESS) 

FS — Shift Key (PEEK ADDRESS) 

JS — loystick (PEEK ADDRESS) Port 2 

GL — Grid Left (SCREEN LOCATION) 

GR — Grid Right (SCREEN LOCATION) 

C — Colour Value To Add To (PL) 

S — Start of Characters in RAM 

A — Character Used for Grid (REDESIGNED) 

PL — Place (SCREEN LOCATION) for Cursor 

CO — Colour Screen 

CT(J) — Array for M/C Transfer Data 

GC — Grid Colour (SCREEN LOCATION) 

NC — New Character Count (SCREEN LOCATION) 

NV — New Value Count (POKE VALUE) 

NX — Bit Value Count 

PA(K) — Poke Address (NEW CHARACTER) Array 

CV(K) — Character Value (NEW CHARACTER) Array 

CH — Character (PEEK VALUE) Transfer 

G2 — Grid (SCREEN LOCATION) Transfer 

ZZ — Used for Counting in Save Routine 

BC(J) — M/C Data Array in LOAD Routine 

BV(j) — Data Value Array in LOAD Routine 



CLOSed). When finished, key 
in CBM and F2 to close save 
routine. 

There is a short program 
(LINES 9000-9130) which can be 
copied and run independently 
which will LOAD the machine 
code routine and your 
characters. You can then use 
your characters within your 



program and you lose your 
characters. 

If you break out of the 
program, to try out your 
characters clear the screen and 
type GOTO 2030 (which puts 
you back into the program 
without losing your char- 
acters). 



PfOftrjm titling 



100 REN **•• DESIGN 64 •«•• 
101 

102 REM •••• BV Ii. EUPPIETT ••*• 

163 

IW FEH «••• AUGUST 1984 

163 

iet »em ••>■ isicc bvte; 

12© 

121 PEN VARIABLES USED •■« 

123 

130 POKE53281.© P0t;ES3;ee-6 ''0«t S4>6 
140 FX=|?7 FS*653 JS-36320 
13© GL«I3©4 0R-I324 C-34272 CC-1 
160 SM228S A»233 PL*1324 CO-PL «C 

170 sRu-anmnmimnRMi" 

188 SSI"" 
l?0 DIIKTCW) 
: .him 

1010 REN ••»* ChAPACTEFS ' -El 
i 0:0 

1030 PPIHT CHRi<l4?> 



1 966 

ioto 

1030 
1090 
1100 
1110 
1120 
1130 

1140 

use 

1 160 
1170 

use 

1190 
1200 
1210 
1220 
1230 
1231 
1232 
124© 
1230 
1260 
1270 
1288 
1290 
1295 
1300 
1301 
1302 
1318 
1315 
1320 
1330 
i 

1330 
1355 
1360 
1370 

i sn 

1390 

ii w 

1410 

1420 
1430 

1440 

ISM 

1520 
1530 

: 

1560 

ive 



] V-,, 

i >:.oc 
1610 
1620 
-. 

1710 



PEN CHARACTER <fl> SETS I MID 2 
REN USED FOP CP1D. 

PEN* CHARACTER (254 4 > 

"EH SET 1 AND 2 USED AS CURSORS. 

PEW «M CHARACTER TRAHFER DATA 

F0RJ-0T037 READX CTcJ>-X POK£49|32*J . X NEXT 

DP.Tfll20.16S. 1.41-251. 133. 1, le? 

DATA©. 133. 25©. 1 33. 252. 169. 208- 133 

DATA231, 169.48. 133-233. 160-0 

DATAI77-25©. 145. 252.20©. 208 

DAT A249 . 23© . 25 I 230 . 253 . 1 62 ■ 224 

DATfl228. 231. 268. 239.163. I. 9-4. 133 

DATAl. 88. 173-24, 208. 41, 240 

DATA?. 12- 141.24.206-96 

3VS49I52 

PEn ••■* GRID CHARACTERS •••* 

POrt 12288, 255 F0PJ-6T05 POKE12289-I. 129 NEXT POȣ12289*I. 253 
P0»El4336.2S5 FOPJ-OtOS FOE 14337* J. 129 NEXT RO*EI4337*J.233 

p-14328 rokep.255 pokep*7.255 pokepm-129 p0kep*6129 pwep*2. 153 
p0kep'3.i53 pokep-4.189 foep.3- 189 

pm6376 pokep-253 pohep'7.255 f0kerm.129 fokep-6- 129 po> ep-2. 153 
p0kep*3 . 1 33 p0>ep'4 .189 po*er*3 . 139 
fort--et07 p0ke14320*j.233 poke 16366* i- 233 next 

rem instructions 

print-si character msignepj-q- 

"H'"" :i a -■■ ■ i ">n 

PPlNT"Fi ADVAttfE CHARACTER SELECT* 

PRINTS — RETARD CMAPACTEP ;ELECT" 
PRINT "FS — DISPLAY CHARACTER GRID" 

PR I NT "F 7 SET RE DEFINED CHAPACTERB" 

PRINT-NOTE » USE SHIFT KEV Atffi FUNCTION tXV fM3" 

PRIHT'F2 — SELECT FIRST CHARACTER SET" 

PRINT ~F4 — SELECT SECOND CHARACTER SET" 

PRINT-F6 — - RETURN TO SELECT M0IC- 

PRINT'TB — SAVE REDIFIMED CHARACTER*' 

PR I NT "MOTE Xa USE CF*I KSV AND FUNCTION KEV MT 

PRINT"*:* — TO CLOSE SAVE ROUTIHE* 

PRINT--F4B CLEAR RIGHT GRID" 

FP1NT--F6B — REVERSE LEFT OR ID TO RIGHT" 

PRINI--F8B fPAHFEP LEU GRID TO - I'-'u 

PR I NT -""PRESS ANV KEV TO CONTINUE..." 
OCT AH* IFAH*"""THEN1510 

PPI"T"rTIPST US. IF 23 OR IF 41 TO SELECT CHARACTER" 
Pt»lHT"S£T.f* THEN u;F MT 11 OP IF3S TO SELECT THE" 

PRIHT-CHARACTEP NUMBER. NEXT USE IF53 TO PLACE CMAPACTEP ONTO GPlD.iT 
PRINT-USE JOYSTICK (PORT Z: FIRE BUTTON MILL SET OP INSET. HOVE WDOHN. 
PRINT" LEFT OR RIGHT" 

PR I MT* USE 3 CBN ■ UITH KF4 F63 0> 1*83 TO CLEAR. C0PVOR REVERSE* - 
PRINT" CHHRACTEP.ir PRIMT*U8I 1F-J3 RtT'HI TO SELECT NODE OR". 
PRINT- IF FINISHED SET CHARACTER WITH IF TXT' 

PRIKT-lFsa MILL SAVE M'C TRAHFER ROUTINE ANli MEUCHAPAC T£R DESIGN ON THE" 
PRINT* FIRST SAVE AND" PRINT" IUST THE CHARACTER 3*1 OTHER SAVES. <* 
PRINT-LEAVE NRECOPD.'PLAYS DOWN UNTIL FINSISHED DE»:«HIMG CHARACTERS" 
PRINT-USE * CDT-I f WITH IF21 TO END SAVE ROUT (HE* 1 
PRINT-STRESS ANV KEY TO CONTINUE. . .3" 
GET AN» IFANM--THENI710 



64 Utility 



Program listing 



2001 pem 



DISPLAY START ♦»•• 



2010 PO'E5328O.0 P0>E53281.e P0KE646-5 

2626 PRINT "3 * CHARACTER DESIGNER QT 

2023 

2026 rem •••• F2 .ev press 
2087 

2030 IFPEE»<Ffc>-4ANDREEMFS>«lTHENCS-142 S-12288 GOSUB 4000 
2033 

2836 REM •••• F4 -£v PRESS •••• 

2637 

2040 lFFEEK<Fk>-WDF-EEK(FS>-iTHENCS-14 S-14336 GOSUB406O 
2043 

2©*6 REM Fl "EV PRESS •••• 

2047 

2859 IFP£0<FKl-4flNW>EEK(FS)-eTHENCC-CC-l IP C0253THENCC- 1 
2866 AD*$*CC*8 GOSUB4000 

2063 

2066 PEM •••• F3 KEV PPESS •••• 
2067 

2070 IFF€E'iFK)"WDFtO<FS)-0TMEMCC-<X-l IFCC<lTHDlCC-»3 
2080 SD-SiCCW C" 



nvv ^Er' ••>■ F3 »ev PRESS •••• 
2087 

2690 IFPEE*'F>-6ANDPEEK<FS>-«ThEH JC"1 GCSUB41O0 

2101 REM •••• Fe >EV PRESS •••* 
2102 

2110 IF PEEKIFX— 3 AND PEEKFS>-1 THEN SR-SR»I 
2120 

2121 PEN •••• CBM AND F2 IEY PRESS •••• 
2122 

2130 IF PEEK<FK >*A HUD PEEK<F$>-2 THEN A- 2 GOSUB 
2300 IF JROI THEN GOTO 2030 

3001 REN ***« JOYSTICK ROUTINES ••*• 
3002 

3010 IF PEEK<FK>-3 BHD PEEK'FS>-2 THEN GOSUB 5660 
S028 IF PEEK'FK>-6 AND P£EKFS>-2 THEN GOSUB 5400 
3036 IF PEEK<FK>-3 AND P£EK<FS>-2 THEN GOSUB 9666 
3040 IF PEEK'FK>-6 AND PEEK<FS-I THEN JR-O 
3200 

3201 REM •••• JET. 'UNSET •••• 
3202 

3210 IF PEEKUS>-111 AND PEEK PL) '254 THENA-233 
3220 IF PEEK<JS)-111 AMD PEEK<PL<-255 THEN A-254 
3300 

3301 REM •«•• MOVE UP ***♦ 
3302 

3310 IF PEEK<JS>-I26 AND PEEK<PL-40>O32 THEN TV-PL PL-PL-46 CO-PL*C GOTO 3340 
3320 IF PEEX<JS>-|26 AND FEEXPL-40.-32 THEN TV-PL PL-PL*289 CO-PL-C 

- - H 

3340 IF PEEK TV) -255 THEN POKETV-O P0KETV.C.I2 
34M 

3461 REM •«•• MOVE DOWN »•»* 
'■u 

3410 IF PEEK(JS>-125 AND PEEK(PL*40>O32 THEN TV-*L. PL-PL*46 CO-Rl-C 00T0 3430 
3420 IF PEEK<JS>"125 AND FEEK(PL.40>-32 THEM TV-PL PL-PL-236 CO-PL-C 
3430 IF PE£Kav>-253 THEM POKETV.0 POKETV-C.|2 

3501 PEM •••• MOVE LEFT 6666 
3562 

3510 IF PEEK<JS>-123 AMP PEEK(PL-1>032 THEN TV-PL PL-PL-1 CO"PL*C GOTO 3530 
3520 IF PEEK'SI-123 AMP PEEK ( PL -1 >-32 THEN TV-PL PL-PL*7 CO-PL *C 
3538 IF PEEK<TV>-255 THEM POKE TV. 6 PC*£TV*34272> 12 

3661 REM •••• MOVE PIGHT •••• 
3662 

3610 IF PEEK<JS>-119 AMD PEEK < PL* 1 >032 THEN TV-PL PL-RL'l CO-PL *C GOTO 
3620 IF PEEK<J3>-II9 AND PEEK(PL*1 >-32 THEN TV-PL PL-PL-7 CO-PL *C 
3630 IF PEEK<TV>-253 THEN POKETV.0 POKETV-54272 . 12 

! rm 

3701 REM MM PESIONIMO CHARACTER 
3702 

3710 GOSUB 4500 



3801 PEM Mm F7 KEY PRESS •••• 
3802 

3818 IF PEEK<F*(-3 AND PEEK<FS>-6 THEN JR-0 GOSUB 
3998 IF JROI THEN GOTO 2030 
J999 ir -no* ivr ;.>;ni 

4660 

4001 REM !•** SIRE EN DISPLAY 
4002 

4010 PRINTCHRKCS > P0KE33296. 12 

■■■■■■ - - -v>i urn 

4696 FCI'it CC 

4S40 PRINT" "I-orTP*<24>- ADDRESS". 
4050 PC*EI120,CC P0KE35392.6 
4666 PRINT ht 
4070 RETURN 

4101 OEM MM DISPLAY GRID LEFT 
4182 

4118 PRINT-*06W1" 

4126 PRINT-2631- 

4138 PRINT-e4268421 DATA" 

4146 0L-I3O4 GC-X*C 

4150 F0RK-8T07 

4166 F0RJ-6T07 

4176 P0KEGL*J.6 PQKE0C*J,12 

4180 NEXT GL-GL»48 GC-OC-40 NEXT 

42O0 

4201 REM MM CHARACTER ON GRID MM 



4218 L-6 OL-1304 GC-GL-C X-128 »!■' 
4226 F0RK-6T07 X-128 
4230 :w»PEEX(AD*K> 
4240 F0RJ-6T07 

4250 IFCH>-X THENPOKE0L»J«L-254POKE0C*)*L.lI CH-CM-X 
4260 X-X/2 

4270 NEXT 

4290 L-L-40 
4296 NEXT K 
4360 

4301 REM *••■ CHARACTER VALUES MM 
4362 

4310 F0RJ-0T07 

4320 IF PEEK(AD*J>>-0ANDPEEKCAD»J><-9THENPRINTTAB<10>- "PEEK<AD*I> 
4346 IF PEEK(AD*J)>9ANDPEEK(AD*J)<-99THENPRINTTAB'I0>- "PEEK<AD*J> 
4350 IF PEEK<AD*J)>99THENPRINTTAB(ie)PEEK<«IH-J> 
4 360 NEXT 

440C 

4401 PEM •••• DISPLAY GRID RIOHT 
4402 

MIC 0»*IJ24 OC*OR*t FL-1324 H-253 

4420 F0Pt-0T07 

4430 FOPJ-OT07 

4446 POKEGR-J.O POKEGC'J.12 



4450 NEXT OR-OR-40 K-GC-40 HOT 
4476 POKEPL.A POKEPLK.l CO^L«C 
4430 RETURN 
4500 PWEPL.A POKECO.l 

4510 FRINT~c0MK'X-»»M»i»»MM»l 

4520 PETUPW 



4601 DATA FOP PIGHT 3PII •••• 



-;NV 
;NV 



4610 NC- 1324 NX- 128 
4628 F0PI-0T07 FORJ-0TO7 
4630 IF PEEKNC*J>»254 THEN NV^IV*ie; 
4640 M»NX/2 
4650 NEXT 

4660 MC-HC«40 CD-flD*K 
4670 

4688 REM »••» DATA PRINT •••• 
4690 

4700 IF HV->e AND NV-<? THEN PRINTTAB< 30 1 
4710 IF NV>9 AND NV«<99 THEN PR|MTTA9<30>- 
4726 IF NV>99 THEN PRINTTABI30> .NV 
4730 CV(»)-NV PA<K>-CD NV-0 NX-I20 NEXT 
I - i'ii 

4801 REM •••• ADDRESS AMD DATA •••* 
t 

i,i Fi I Q 
4820 PPIHTPACJ>. 

4630 IF CV(J»-0 AND CV< JX-9THEMPRINT- *CV<J> 
4840 IF CV<J»9 AND CVC J><-99ThEiiPPINT" "CVf J) 
4850 IF CV<J>?99 THEM PPINTCV<J> 
4860 NEXT PRINT 'TTTTT FORJ-0TO3 
4870 PPIMTTAB'20IPA'J«4>. 

4S80 IF CVO4»0 AND CV< I•4><-9THENFRIMTTAH26> , ' ■CV<J«4> 
4896 IF CV<J«4»9 AND CV< J*4K-99THENPRIMTTAB<20>" *CV<J*4> 
4900 IF CVCJ*«»99 THEN PRIMTTAB<20>CV( J*4) 
4910 NEXT 

4920 FORJ-OT07 POKEPA' J>.CV< J> NEXT 
4999 STOP 

5001 PEM »4*4 MOVE TO RIGHT GRID 

5210 L-0 02-1324 0C-G2'C X-128 AI-"WW6ni" 
5226 F0Rt:-6TO7 X-128 
5230 CH-PEEK<HD*K> 
5240 F0RJ-OT07 

5250 IFCH>-X THENP0KE02*J*L.254 POKE0C-J.L.11 CH-CH-X 

5260 X-X.-2 

5270 HEXT 

5286 L*l'*a 

52?0 HOT K 

5300 RETURN 

5400 

5401 REM •••*■ REVERSE TO RIGHT GRID 
5462 

5416 L-6 02-1324 GC"G2*C X-128 AF--«66666r 
5426 F0RK-0T07 X-128 
5430 CH-253-PEEKADHO 
5440 F0RJ-0T07 

5450 IFCH>-X THENPOKE02*J*L254 POKE0C*J»L . 10 CH-CH-X 

5460 X-X/2 

5470 NEXT 

5466 L-L-40 

5490 NEXT K 

5566 RETURN 

5600 

5681 REM CLEAR RIGHT GRID 6666 

?602 

5610 GP-1324 GC-OR*C PL-1324 A-255 

5620 FORK-0TO7 

-■>:■:$ crc t-^7-i- 

5646 POKEGR-1.0 POKEOC'1,12 

5650 NEXT GR-GR-40 GC-GC-40 NEXT 

5670 POKEPL.A POKERL-C.l CO-PLK 

56E8 RETURN 

6066 

6001 PEM SAVE ROUTINE •••• 

nk 

6010 PRINT SRf.-TAPE READY TO SAVE ? ANV KEV TO CONTINUE- 

6020 P0KE198.0 GET MM IF NIK-" " THEM 6020 

6636 PRINTSRISS* 

6040 IF SR>1 THEN 6100 

6650 PRINTSR4. OPEN 1 . 1 . 1 - "DATASAVE" 

6066 FOftl-61:^" 

6070 PP1NT41,CT<J> 

6666 PRINTSR1- "SAVING M/C DATA FOR SPEEDY TRANSFER • 

6095 PRINTSR*. SSf CL0SE1 
6166 

6101 REM tMt SAVE CMARACTEPS 
6102 

6105 22-22*1 CS*--CHARSAVE-»STR»(22) 

6116 PR I NT SRI 0PEH2- 1 - 1 .CSf 

6120 PRIHTSR*; "SAVING DATA" PRIHT»2.FN<6) 

6130 FORJ-OT07 

6140 PRIIIT42.CV'J> ICXT 

6150 PRIHTSPi. "FINISHED* « 

6160 CLOSE 2 RETURN 

6200 

6201 REM CLOSE P0UTII4I •••• 

6262 

6205 22-22*1 CS»- _ CHARSAVE"*STR«22> 
6210 0FEN2.1.2.CSf 

6226 PRINTSRI. PR I NT §2. 9999 CLOSE 2 
6236 2Z-Z2-1 

6246 PPINT'-r. "SAVING COMPLETE " ■22- "CHARACTERS SAVED" 
S566 

6501 PEM *••■ LOAD PROGRAM *»•• 
■:-:>?: 

6510 PR|HT".T- -SAVINO COMPLETE ";22. "CHARACTERS SAVED" 

6520 PRINT-USE A PROGRAM LIKE THIS TO LOAD YOUR CHARACTERS BACK FROM TAPE.' 
e540 LIST90OO- 

REM *••*■ LOAD Nt ROUTINE **•* 

DIMBC<57> 0PEH1 . 1 . 0. "DATASAVE" 
FORJ-0TO57 
INPUTRI.«C(J> HEXT 
CLOSE I 

F0R.J-6T037 P0KE4?152*J.8Ca> NEXT 
BVI49152 



.'00 L 



?016 



REM »M LOAD CHARACTER 

2Z-ZZ*1 CS«--CMARSAVE"»STR«22) 
0PEH2. 1 . 0. CSi 

INPUTI2 . DA IF DA-9999TH£'| CLOSE 2 END 
FCOJ-0T07 INPliT»2. DV< J> NEXT 
CLOSES 

F0RJ-6T07 P0*EDA»J. DVt J > NEXT 
GOTO 9670 



Two notable pieces of 
software face the 
music in these reviews 
from David Crisp and 



Mike Roberts. 




MUSICALC (FROM WAVE- 
form for the CBM 64 or SX-64) is 
one of those programs that you 
need to use as soon as you get 
hold of it. The packaging is 
more reminiscent of a double 
album than a computer 
program, but it is stiff card and 
gives plenty of protection to 
the disc and manual. 

MusiCalc is essentially a 
program which will enable you 
to stretch your SID chip to it's 
limits. It is a synthesiser 
program which makes my 
three year old monophonic 
sythesiser look like a barrel- 
organ. Waveform obviously 
realise that most people will 
want to get music out of their 
64 straight away and so. very 
thoughtfully I feel, the thing 
that comes to hand after the 
disc is a small card which shows 
you how to be totally 
impressed within minutes. 
When you load the program 
the screen displays two 
numbers: one is the E.T.A. 
(estimated time of arrival) the 
other is the C.S.T. (Com- 
modore standard time). The 
ETA is the time the program 
should take to load and the CST 
is the lime it actually lakes. It 
does sound frivolous but it is 
useful. Waveform point out 
that should the program take 
longer to load than the ETA 
shows then it is time to have 
your Commodore Disc drive 
doctored. 

Creating sound 

After a few minutes loading 
a screen somewhat like the 
display you see in an Intensive 
Care Unit appears. A grid on 
the right shows three 'blips' 
moving backwards and 
forward and on the left is a mass 
of lines, squiggles and dots. 

At first I though I would 
never get the hang of it 
but the manual is very good 
and. despite appearances, the 
display is very logical 
and easy to use (with 
practice). As you would expect 
you are able to control the 
three voices of the Com- 
^™ modore and at the top left of 
74 the screen is a panel for each 
voice. This enables you to 
select independently the type 
of waveform used in sound 
generation as well as adjusting 
the ADSR (attack, decay, 
sustain, release) for each voice. 
Below this you are able to 



\ 




adjust the width of the pulse 
wave and manipulate the 
filtration of the raw sound 
according to standard 
sythesiser practice. There are 
the usual types of filters e.g 
low, high pass etc, tempo 
controls ana switches to turn 
on or off particular voices. At 
first it is a little difficult to see 
what the oscilliscope like 
'trace' on the grid is doing but 
as you work through the very 
well written manual the mud 
clears. Unfortunately I have 
prior knowledge of things such 
as how ring modulation and 
oscillation affects a given 
sound and so found it difficult 
to assess whether or not the 
manual was effective in 
teaching the 'ground rules' of 
sound manipulation, but as you 
can hear exactly what you are 
doing with the sound as you 
change it is possible to get what 
you like without knowing why 
you have got it. Knowing the 
theory though would certainly 
assist in usinc the synthesiser to 
the full. 

The 'get you going 
notes' show you some of the 
built in preset sounds and 
songs (referred to as scores). A 
total of thirty two scores and 
thirty two different 'sets of 
sound' give a potential 
combination of hundreds of 
different variations on a theme. 
It took me a couple of days to 
get past the stage of listening 
only to the demos. The preset 
sounds go from the most 
accurate synthesis of fair- 
ground pipes playing 'Cruising 
down the river to Dr. 
Who/Craftwork type sounds 
playing really out of this world 
scores. Some of the sound 



Software reviews 



E resets I am sure would even 
ave the BBC radiophonic 
workshop boys drooling. The 
next step in the manual allows 
you to play along with any of 
the preset scores and sounds 
using any one of the three 
voices. 

Making music 

Eventually I decided it was 
time to let my, as yet 
unrecognised, and doubtful 
musical talent loose on the 
machine. There are two ways to 
enter music into the machine. 
First you choose the type of 
keyboard you require. This can 
fol low the standard chromatic 
scale as found on pianos etc. or 
the types favoured by other 
musical cultures e.g. Hindu, 
Japanese etc. Choosing 
different scales means that 
instead of the usual c,c#. d etc 
you can have a keyboard that 
plays a, c#f or almost any 
combination of the above. 
Seriously though, if you 
wanted to do a Ravi Shanker 



then the keyboard would 
follow the way the notes follow 
in music of the Indian culture. 
A very difficult concept to 
explain and a difficult one to 
grasp if you are only familiar 
with the standard keyboard. 

When you have chosen 
your keyboard you next enter 
your score. The grid shows 
each voice following a set 
pattern across the Rrid. You can 
then choose which row of 
music you wish to enter or edit. 
When you have the display 
corresponding to the selected 
row the screen is split 
horizontally into two: the top 
part shows the NOTE you will 
play and the bottom shows the 
Octave in which the note will 
play. Choosing octave 0 
effectively plays a rest. Using 
the function keys you then LAY 
OUT your tune so that it looks 
like two bar charts. As you 
move your BAR up and down 
you can hear what you are 
entering so it is easy to correct 
mistakes. When you finish row 




MusiCalc 




/Synthesizers Sequencer 



Hv Richard W..ilc>n 





one you can then move 
through the grid one row at a 
time. It all sounds very difficult 
but takes only minutes to get 
used to. After that time it is very 
easy to use. No knowledge of 
music is needed to enter the 
selected score as it can all be 
done by ear. Using this method 
of entry it is also easy to copy in 
standard SHEET music fairly 
quickly and without too many 
mistakes. 

The other way of entering 
music is to switch into record 
mode: the notes you play using 
the qwerty keyboard are 
remembered. You play one 
voice at a time and can hear the 
first voice while playing the 
second voice and so on. The 
music you have entered via the 
keyboard is represented on 
your ROWS. This can then be 
edited easily and quickly as 
described above. A very clever 
idea and one which makes for 
easy production of songs. 
Within minutes I was able to 
bang out family favourites like 
ESKIMO NELL. 

If you like a set of sounds 
included in the presets you can 
use these in your own 
compositions, equally it is 
possible to adjust the sounds 
that the preset scores are 
played with. It is important to 
work through the manual as 
small points can be missed and 
it is possible to get into all sorts 
of tangles. My only real 
critisicisms are the way the 
keyboard responds. It seems a 
little slow in response to 
playing and takes a while to get 
used to. The other less 



important one is the relatively 
small score that can be built up. 
It is possible to give the 
impression of a long score by 
careful repetition but this is not 
easy. I think that this program 
has a massive amount of 
potential not only at home but 
in the professional field as well. 
I don't mean that you are likely 
to see Spandau Ballet using 
these in their performances but 
I think that, withthe addition of 
the other modules, groups who 
cannot read or write music can 
produce scores eaily and 
quickly. 

Other modules 

This leads me on to the 
other modules which are 
available. The first one of these 
will translate your scores into 
standard sheet music with the 
aid of a printer. This module 
also solves the problem 
of the limited score. Il will 
extend the length of score it is 
possible to construct without 
repetition: essential for 
professional use I would 
imagine. The third module can 
be used as a stand alone 
program but is really intended 
to be used with the main 
program. It allows the user to 
play arpeggios with one key, 
contains a visual editing mode 
to allow the user to set up the 
keyboard into any required 
arrangement and has many 
other functions. It would be 
unfair to make comment on 
these two modules as I have 
not seen them but I feel that 
the quality of them is probably 
up to the excellent quality of 



E 




MusiCalc 1 and so they would 
be a good buy. It is possible that 
these two modules may be 
reviewed in later issues of the 
magazine. 

To sum up the three 
modules, it is best to borrow 
Waveform's description: 
MusiCalc 1 is the instrument, 
MusiCalc 2 is the keyboard and 
MusiCalc 3 gives you a 
hardcopy of your music in 
standard musical notation. I 
have just discovered another 
little extra which is available: a 
disc containing preset drum 
rhythms. These would be ideal 
to base other compositions on 
and would be great to play 
along with if you play another 
instrument. Tnis is an excellent 
product and a good synthe- 
siser. I did want a Jupiter synth 
but I don't think I will bother 
now. 



MUSIC MASTER 

MUSIC MASTER BY SUPER- 
soft claims to make using the 
SID chip in the Commodore 64 
easy. I oon't know about easy, 
but it at least makes it usable. 

The SID chip is unquestion- 
ably the most advanced music 
synthesis device in any micro. 
There is only one problem — to 
produce a note requires a huge 
amount of POKEing and bit 
slicing for each voice. When 
you can be bothered to work 
out the masses of computations 
involved the sound produced 
can only be described as 
excellent. Music Master goes 
some way to helping you to 
produce music that uses the 
full facilities of the SID chip. 

When the program loads, 
the main screen shows a piano 
keyboard representing most of 
two octaves. Other inform- 
ation around the edge of the 
screen gives you all the details 
that you could ever want to 
know. The most interesting is a 
small note at the bottom of the 
screen saying 'press shift-h for 
help screen'. 




Waveforms 

Following this advice leads 
you to three screens that 
summarise the comprehensive 
manual. Back to the main 
screen and you can start to 
experiment. Pressing keys on 
the keyboard makes a note 
sound on all three channels. 
The way the note sounds can 
be altered by using the 
waveform screens or the 
special effects screen. These 
screens allow you to 
manipulate the way the sounds 
are made to sythesize a piano 
or flute for instance. 

There are 10 preset 
waveforms that can be used, or 
you can make up your own. 
When you have got a sound 
that you like. Music Master can 
then create its own program of 



tspn tspn tspn 
i ■ • 



MUSICALC 




■■■■■■■■■■■SB 

adsr adsr ddsr V ^■■■■■■■■■■■■■■■b 
qsrt 9srt 9si iV jllllUlllllllllll 1 

* - ^■■llllllllllllll' 
■ ■■■ ■■■■■■■■■> 
■■■■■■■■■■■■■■ 

■■■■■■■■a ■■■■ 
■■■■■•■■■■■■■a 

Hit BH MM 

i |f a p^ = = sgosc ■■■■■■■ ■■■■■( I 

i 1 1 g Bfifg gg p ! 

■ ■■■■■■■■■■■■■■■a I 

I HHdl?3e M It 3456789J i i i ill 

(NU| 0123456 

MOD 




POKEs to set up the SID chip for 
you, and dump it to tape or 
disc. This is a sound for sore 
ears as this is the biggest 
problem that the Commodore 
nas. 

Entering music 

Entering music into the 
system is quite easy. Tempo 
(speed of entering music) and 
the octave that the keyboard is 
in can be selected and then 
you're off. 

The three channels are 
displayed on the top of the 
screen. One of these channels 
can be manipulated atatime — 
the edit channel. When the 
music is entered it can be 
altered and changed to suit — 
extra notes added, notes 
removed, note values changed 
etc. The whole thing can be 
played back with speed 
changes if necessary. There is a 
limit on the number of notes in 
a channel, but whether this is 
3000 or 1500 I don't know as it is 
a bit vague. 

The sound parameters or all 
three channels can be saved to 
tape or disc. One other feature 
is the backing music. This is the 
same as those awful Yamaha 
electric organs that were in 
fashion some years ago. 
Channel 2, 3, or both can be 
used with a list of 17 different 
backgrounds. You can 
then play over this. It makes 
almost total dross sound 
reasonable. This is not available 
from edit mode and you 



cannot store any music using 
this feature — only play it. 

Final note 

There are so many things 
that Music Master can do it rs 
beyond the scope of this 
review to go into them all in 
any great detail. I hope I have 
covered all the main important 
features. 

The disc version of the 
program comes with a large 
number of demo tunes ranging 
from 'A string of pearls' (spelt 
A$ of ...'!) to 'When I'm 64'!. 
Also, the demo programs from 
the manual are there. I don't 
know what the tape version 
contains, but the manual only 
mentions one tune. 

The big problem with the 
program is that the manual says 
that it is beyond its scope to 
explain how to incorporate the 
data that the program 
produces into your own 
programs. After a weekend's 
work and 2K of machine code 
later I agree — but it can be 
done. 

There is a program in the 
book that will play one channel 
at a time, but it is very 
unsatisfactory and can be 
improved 10 fold with the 
addition of a single line. This 
said, for the price it is an 
excellent program. I was very 
surprised to find that the main 
body of the program is in 
BASIC. If you want a music 
program for the 64 this is the 
one to get. 



re Deathstar, can you penetrale its 
I destroys you 7 

ou 1 2 screens ol 3D graphics super 
e sound effecis. music, 4 skill levels 
b ultimate challenge! 
to be believed' You have noi 
»4 is capable o' until you have 
rlftr - CommodQi^fi*^. 






HOW TO ORDER 

^Tb purchase Deathstar Interceptor. sirtipj 
IjteiAdaddress orP^Mece ot paper, enclosii 
^GBBk payaDl|Io: SYSTEM 3 SOFTWAR| 

|jaddressj|HH ease a " ow 7 ,0 14 aa V s 1 
Please aflH^Wfeeifca me ordered. 




South Bank House, Black Prince Roj 
Tel: (01) 587 0873 J 



□it 



WRITE YOUR OWN 



IMMTTT 



DEALER INQUIRIES 



EXPORT INQUIRIES 
WELCOME 



A 





This diagonally 
scrolling mazegame 
features superb 3D 
graphics brilliant sound 
effects and requires 1 00% concentration to successfully manoeuvre your 
helicopter through unknown hazards in order to complete Zaga Mission 
and live to play another day — Commodore 64 — £7.95 

Also available on Disk 8t£ 

TRADE ENQUIRIES: ANIROG SOFTWARE LTD. 29 WEST HILL DARTFORD KENT (0322)92513/8 

MAIL ORDER: 8 HIGH STREET HORLEY SURREY 24 HOUR CREDIT CARD SALES HORLEY (02934) 6083 
PAYMENT BY CHEQUE P.O. ACCESS/VISA 50p POSTAGE & PACKAGING 



THE REAL TIME GAME 



SYSTEM 15000 The different game with the NEW ' TOTAL REALISM concept developed by sets 
you firmly in the middle of an International conspiracy where you have to use your computer together 
with SYSTEM 15000 to recover $1,500,1X10. The game is a 'real time' investigation that realistically 
captures the excitement of accessing computers by telephone and breaking their codes to obtain vital 
information. 

AVAILABLE NOW - CBM 64-BBC B SPECTRUM 48k 

Also available - The No. 1 chart success FLIGHT ZERO-ONE FIVE (VIC20) and the Helicopter Action 

Game - WHIRLWIND ONE-FIVE (VIC 20) 
SPECTRUM £9.95 BBC AND COMMODORE £12. .95 

= ^ ===== ^ = CRAIG COMMUNICATIONS = 

I'D H( >\ 4f> HASIXi ;STt>KI. HAMS H(,>l I HA t'HOM. IOS6.55462 
THUiX writ, SOTHXti iCHAIt. COMXH \ICA IIO\Si 




AND LEADING COMI'l 'TF.H 
STORES 




This month, Grahame 
Da vies, Your 
Commodore's D.I.Y. 
business enthusiast, 
looks at formatting 
numbers and sorting 

data. 



AN IMPORTANT SET OF 
routines are those which limit 
variable input to integers, one 
decimal place, two decimal 
place etc. and then format 
these numbers. Apart from the 
CBM 700, Commodore 
machines do not have a 
ROUND function or a PRINT- 
USING command and so we 
have to write our own. The 
advantage of being forced to 
do this is that we can format our 
numbers exactly how we like 
them. For instance you might 
format the number negative 
one thousand five hundred 
and sixty-three in various ways: 



DOING IT 

YOURSELF 



-1563 
-1563.00 
(1563.00) 
(1 563.00) 
(1,563.00) 



or if you were German 



(1.563,00) 



The BASIC INT command 
always rounds down thus 1.4, 
1.5 and 1.9 will all become 1 if 
INT is performed on them. We 
now have to use this limitation 
to our advantage. The first 
function to write is a round-off 
function so that 1.4 = 1, 1.5 = 2 
and 1.9 = 2. This is how 
rounding off is normally 
performed but if you require 
different rounding then it is a 
simple matter of altering the 
following function: 



1120 def fnr{z) = int (z + .5) 



The function we have just 
defined will now round off to 
an integer and can be called bv 
a =1.5 : b = fnr(a).To round off 
to one decimal place we simply 
multiply by ten, perform the 
round off and then divide by 
ten: 



1130 def fnr1(z) = int (z * 
10 = -5J/10 



To round off to two, three 
etc. decimal places, it is a 
simple extension of the above 
function: 




Programming 



1140 def fnr2fz) = int(z ★ 100 + 
.5) /1 00 

1150 def fnr3(z) = inl(z * 1000 + 
.5)/1000 



Having done this, we can 
now set about formatting these 
variables into strings. The 
easiest way to do this is to write 
one general format subroutine 
for the variable with the most 
decimal places (we will use 
and then use smaller 
subroutines to call this one by 
simply truncating the string 
accordingly. 

Starting with the general 
format routine, we will format 
numbers to two decimal places 
and return a string of length 
ten. It is important that the 
string returned is always the 
same length so that listings will 
always be neat. We will also 
make sure that the routine 
handles negative numbers. 



explain briefly how a Bubble 
Sort and a Shell-Metzner Sort 
work, giving examples of each. 

The Bubble Sort is the most 
simple and most popular sort 
used by micro-computer 
owner. The principle is to scan 
along a set of data held in an 
array, comparing adjacent 
elements and swapping them if 
necessary. If there are N 
elements in the array then it has 
to be passed N minus one times 
to ensure that the sort is 
complete. If an element is at 
the wrong end of the array to 
start with, it is going to be 
swapped a lot of times before it 
reaches its sorted position. This 
is obviously going to be slow. 
Another problem is that for 
large arrays, the constant 
swapping of strings will cause 
one or more garbage 
collections thus slowing the 
sort even more. Each pass of 



1*00 6i lnr 2(a>:a$.sw $(b.. 001 ) i i f t>«0 1 hena$:" . 00 - 
1*10 rem ihere is a spare here ^ 

1*20 aS-midSf- " , sgn ( a ) • 2 , I >: 

a$*a$*l*(t$(r ight$<" ■♦*$, 10), 9) 

1*30 rem ff^ minus space Space 6 spaces 

l**o return 



This routine allows a 
floating point number up to 
999.999.99 to be formatted. The 
first character returned is 
either a space or a minus sign 
depending on the sign of the 
number. If zero is returned, the 
first character is also a space. If 
you want to change this then 
change the first string in line 
1420 ( mid$("- ") J to the 
symbols you require. This is in 
the format negative : zero : 
positive. So if you wanted a 
minus sign for negative, a plus 
sign for positive and an asterisk 
for zero, the string would be "- 

To format a string one 
decimal place, we simply have 
another subroutine such as: 



1500a=fnr1(a):gosub1400:a$=le 
ft$(a$,9):return 



For formatting an integer 
you could still use the same 
standard routine: 



1520 a=fnr(a):gosub1400:a$=lef 
i$(a$,7):return 



Sorting yourself out 

The next subject to tackle is the 
one of sorts. This subject is vast 
but for out purposes I will 



the data will result in one 
element ending up in its 
correct sorted position. More 
than one element may be 
sorted correctly but wo have no 
way of telling this and so this 
can be ignored. Each 
subsequent pass of the array 
will have to scan along one less 
element as they become 
sorted. 

The code for the Bubble 
Sort is therefore very short and 
convenient for sorting just a 
few items and here is an 
example — it sorts N items in 
A$(arravl into ascending order. 

Your Commodore will sort 
numbers faster than strings and 
it will sort short strings taster 
than long ones. To make use of 
this, if you had three hundred 
records each with one hundred 
characters of information then 
you should scan the array 
taking out the key and putting 
it into a second array together 
with a pointer to its original 
position. Sorting this second 
array with its snorter records 
will be much faster and you will 
end up with a sorted array of 
keys with pointers to the first 
array. If you do this, you must 
remember to keep your keys 
the same length otherwise the 

Siointer will get merged in and 
orm part of the key. 



1600 for x = nl to 1 step -1 
1620 for j = 1 to x 

1640 if a$(j) a$(j*-1)thent$=a$(j) :a$(j)=a$(j+l):a$(j+1)=t$ 
1660 next:next 
1680 return 

Example of Bubble Sort 



The Shell-Metzner Sort is 
far faster because it makes 
swaps of items over greater 
distances and ii also does an 
"intelligent" Bubble Sort. It 
does less scans of the data but is 
more productive on each of 
these scans. This means that 
less swaps are made and so the 
speed increase natu-rally 
follows. The "intelligent" 
Bubble Sort referred to above 
is more easily explained with an 
example: if you have an un- 
sorted list such as A C D B E and 
you do one pass ot a bubble 
sort on it, you will end up with a 
list looking like this: A C B D E 
and it will require another pass 
to get it into a sorted order. The 
Shell-Metznei sort tries to 
move back after it has made a 
swap and then tests to see if 
further swaps may be made and 
so on. When it cannot make a 
swap, it moves forward to 
continue the rest of the scan. 



Thus the list will become 
ordered in only one pass: A C D 
B E goes to A C B D E (making 
the first swap the same as the 
Bubble Sort but then moving 
back one item to see if B may be 
swapped again) thus giving A B 
C D E in only one pass of the 
data. The information I have 
provided you with should be 
enough for you to see why the 
Shell-Metzner sort is faster 
although you will have to study 
it in greater detail *o fully 
appreciate it. 

The following example sorts 
N items into ascending order in 
A$ array. 

Both of these sorts will sort 
data in situ (not creating new 
arrays to sort into). If you had 
enough memory for duplicate 
array(s) then faster methodsare 
available but the above two 
should be adequate for most 
applications. 



1700 sw=2T( int(log(n-l)/log(2)) + l ) 
1720 swrsw/2 

1740 p3=n-sw: p2=0: i f sw< 1 then return 
1760 pl=p2 

1780 p4 = pWsw:if a $ ( p 1 ) >a$ ( p4 ) then 1840 
1800 P 2=p2* 1 : i fp2>p3 then 1720 
18 20 goto 17*60 

1840 t$=a$(pl ):a$(pl )=a$(p4) :a$(p4), t$ 

1860 pl = pl-sw: ifpKO then 1800 

1880 goto 1780 Example of Shell-Metzner Sort 




David Crisp examines 
tribulations 




COVERING SOMERSET, 
Devon, Cornwall and the 
Channel Islands PCS SOUTH- 
WEST have grown from very 
humble beginnings into one of 
the major home computer 
wholesalers in the area. Andy 
Denning, founder and present 
chief, started off as a salesman 
for a well known record 
company. As the home 
computer market started to 
expand he soon saw the 
potential and need for a 
distributor in the South West. 
He had already been selling 
records to many of the shops 
that were now beginning to 
stock home computers and 
software, so as a known face he 
had a head start on other 
salesmen. While calling on a 
customer he heard thai a 
recently formed distribution 
company were looking for 
agents to set up depots 
throughout the country. Andy 
left his sales job and within a 
few weeks he was touring the 
west country in an estate car 
selling the latest software at 
competitive prices. 

The car was his warehouse 
at first with his entire stock 
loaded into bread baskets. It 
was only a matter of months 
before his own house started to 
fill up. Andy says "I didn't want 
to get too big too quickly and 
so my wifeand I put upwiththe 
house being full of games just 
in case things went wrong". But 
nothing did and so he was 
forced to rent space where he 
could develop the business and 
put it on a more permanent 
rooting. 

Early days 

At about this time the 
Christmas rush of 83 was just 
starting. It was necessary for his 
wife's sister to help run the 
office while Andy carried on 
moving around getting into 
more and more retail outlets 
and receiving larger and more 
regular orders. 

It has always been his 
intention to know his product 
well and so when new software 
was released he made sure that 



COMPUTERS 
IN BUSINESS 



Andy Denning 




he tried it himself and could 
then decide whether or not it 
was worth stocking. With the 
rate at which new software is 
released it is not possible for 
him now to judge everything 
personally but everything they 
stock will be judged by one of 
his workers and their "opinion 
passed on to Andy. With 
competition between software 
houses as it is, software is often 
advertised on a large scale 
months before it is released. 
This obviously means that retail 
outlets are bombarded with 
requests for a particular game 
and in due course Andy is 
bombarded with orders from 
the retailers. He has to try and 
placate the retailer by 
explaining that despite the 
adverts the game is not yet 
available. He feels that he is the 
cushion between the software 
house and the customer and 
has to take a lot of unfair 
critisicm for not being able to 
meet demands. "It makes me 
look as if I am not getting the 
oods quickly enough and it 
fleet or 



loes reflect on me" ne 



says. 



Primarily software 

I pointed out to him that in 
some circles it was felt that 
computer and games sales had 
now reached their peak and 
would now begin a slow 
decline. His reaction was one 
of surprise. He said that since 
he had started there had been a 
progressive rise in sales and the 
trend seemed to continue to 
grow. He said that unlike the 
skateboard and CB radio, 
computers could always offer 
something new, an original 
game or a new application. 
Because of this he feels that 
although the rate of increase ay 
although the rate of increase 
may slow down as prices fall 
and the machines become 
more powerful there will 
always be a good market. 
Unlike many distributors he 
has not become too deeply 
involved in stocking the 
computers themselves. He will 
supply the hardware but only 
carries a small stock or gets to 
order. He says "If you get a bad 
batch of games it does not 



mean a massive amount of 
money has to be found in order 
to credit the retailer, however 
ten machines represents a large 
investment and you only need 
a few returns in order to make a 
big dent in the bank account". 

Christmas rush 

When I was there Andy was 
preparing for the Christmas 
rush. Trying to predict which 
games will be dead and which 
games will become popular is a 
nightmare, he says, and that is 
without any new releases that 
may appear between now and 
Christmas. From what I could 
see while I was there it seemed 
he had a very good 'nose' for 
predicting the sellers as when 
the phone rang he could fulfil 
almost every order, and many 
of the unfulfilled orders were 
due to being out of stock. 

I went to see Andy late one 
afternoon and while talking to 
him Adam, another of Andy's 
new recruits, was making upan 
order for a shop in Exeter. The 
order had only been received 
at five o-clock but it was being 
put together and would be 
delivered bv about six o'clock. 
This seemed to bear out what 
Andy had said about trying to 
get orders to the customer as 
fast as possible. Adam had 
started with Andy on a job 
creation scheme but Andy told 
me that he would be kept on as 
a full time employee after the 
scheme had finished. He said 
he enjoyed the work and Andy 
was a good boss who even 
made the tea! Recent weeks 
have not been the quiet period 
that was expected and the new 
premises taken over only a 
couple of months ago are 
already too small. New 
premises are required already 
and possibly more staff to cope. 



Expansion 



By the time you read this Andy 
will have made great strides 
towards even more expansion 
and should be distributing 
nationwide. He will obviously 
need more people on the road 



Profile 




Y 



to do this but he says whatever 
happens he will still take a key 
role and continue to offer fast 
efficient service, thus enabling 
Andy to buy software in larger 
quantities and therefore at a 
lower price. This should allow 
him to sell at even more 
competitive prices and so, with 
luck, these savings should be 
passed onto the customer. 

looking around I could see 
a Spectrum, Commodore 64 
and a Dragon and these were 
being used to evaluate the last 
batch of new releases. The 
games were getting a good 
tryout and two were harshly 
criticised. "According to the 
adverts" says Adam "this is 
supposed to be the best thing 
since sliced bread. The 
graphics on the title page are 
brilliant but the game is a 
disaster, but due to the massive 
amounts of money spent on 
publicity it will sell and I am 
sure a lot of kids will be 
disappointed". A large box of 
tapes, joysticks and discs sat by 
the office door. Andy told me 
that they were faulty returns 
but when they check through 
he finds that many of them are 
perfectly OK and presumes 
that either instructions have 
not been followed or tapes 
have been copied then taken 
back to the retailer as faulty and 
simply sent back to him assuch. 
"It is one of thecoststhat I have 
to absorb" he says. Looking 
through the box myself I could 
see what he meant. I could also 
see that on such things as 
joysticks many of the returns 
were due to misuse. It seems 
that rather than upset retailers 
Andy will take them back in a 
lot of cases and simply repair or 
replace them. 

One of the other staff who 
works in the office is a young 
girl called Elaine; today she isat 
college as she also is on a job 
creation scheme. Andy feels 
that these schemes are an 
excellent thing and although 
they are misused by some on 
the whole they bring benefits 
to the people on them and to 
the employer. Certainly true in 
Andy's case as all the people on 
schemes sent to him have now 
been taken on as full time. 



Peripherals 



Apart from games Andy's 
second best seller is joysticks; I 
saw boxes full of joysticks in all 
colours, shapes and sizes and, 
while I was there, almost every 
order included some joysticks. 
He tells me that they seem lo be 
the first peripheral bought 
after the computer. Disc drives 
come next. 

I asked Andy if he wanted to 
become involved in software 
writing himself. I was surprised 
to see that he was in fact 
marketing an adventure game 
for the Spectrum under his 
own label. It was written using 
the Quill, a piece of software 
Andy rates highly, and is 
available for both the Spectrum 
and Commodore 64. It is called 
INSANITY and so far it seems to 
be doing very well. Plans for 
further releases are not yet 
known. Q 




Piracy 



I asked him if he had seen or 
been offered any pirate copies 
of popular games. He 
immedtately responded with 
an unprintable sentence of 
what he thought about pirate 
tapes. He has seen very good 
copies of populargamesat very 
low prices, but he says they are 
a recipe for disaster. As the 
software companies have to 
put up prices to cover the 
losses due to pirate copies, 
sales decline. More copies are 
made due to the price and so 
on. It is a vicious circle which 
cannot be stopped once it gets 
out of hand. Who is going to 
spend hours writing and 
marketing high quality 
software only to see it ripped 
off within days of it's release 
and, in some cases, before it's 
release? Not only will the prices 
rocket but the quality of 
software will drop. 



American software 

Talking of quality Andy 
pointedout to me some of the 
new releases from the USA. 
They had to be seen to be 
believed. He feels that this 
injection of high quality 
software will force UK writers 



to think hard and long about 
the quality of their own goods. 
Although he is sad for the 
companies that will obviously 
'go under' he feels it is only 
right that the customer should 
be able to get the best available 
for their machine. He is a little 
worried about the state of the 
pound of late and says that just 
as the price of imported 
software should have been 
dropped, bang went the 
exchange rate. This will make 
price cutting difficult if not 
impossible and in a few cases 
may even mean upping the 
price of imports. He also 
pointed out to me that over 
nere we are only seeing the 
best of the American games. 
He says that over there you can 
find a lot of very low quality 
software for sale. 

I asked him what he 
thought about the high 
hardware prices over here 
compared with the States. He 
told me that unfortunately he 
felt it would always be the 
same. He says that apart from 
the exchange rate the sheer 
volume of sales potential over 
there means profit margins can 
be very low. If you can sell a 
machine or peripheral to just 
1% of users over there you are 
talking about hundreds of 
thousands of sales. It is the 
same for everything over there 
— cars, records the lot. I could 
see what he meant. 



Business sense 

Andy is pleased to see home 
micros being used for other 
things as welfas games. "When 
I first started it was almost 
impossible to get any business 
software for any of the 
machines and what you could 
get was not worth having. That 
has all changed now and some 
of the business software for the 
Commodore 64 for instance is 
infinitely more superior than 
software that is being run on 
'real' business machines", he 
said. 

At the moment Andy is 
looking to get his business 
computerised. Andy told me 
"It is a hard choice. I need a fast 
and powerful machine and the 
amount of information I need 
to store will, without doubt, 
require a hard disc system. I 
also need something that will 
grow with the business as once 
I get the system set up I don't 
want to find that it is going to 
need changing after a few 
months. I've almost come to 
a decision on the machine I 
want. It's now just a matter of 
getting the right software". 

For a non-computerised 
office everything was 



incredibly well ordered. Andy 
said that speed was important 
to him and that he had to have 
everythig well organised. This 
was borne out by the fact that 
virtually no orders were mislaid 
and very few orders were late 
in being delivered. It was this 
reliability that had helped him 
succeed where others had 
failed. "There is no hard sell 
here. We don't get on the 
phone all the time asking for 
orders. People know where we 
are and they will order from us 
as long as we do what we do 
well." 

"Our van goes round most 
of our customers once a week 
or at worst once a fortnight. 
The shops are, in most cases, 
able to take their stock 
immediately from the van. 
They can see what they are 
buying at the time without 
having to rely on what they 
have read about it. Of course it 
is not possible for us to relv on 
our dealers. Take the Channel 
Islands for instance, all the 
business there is done by post 
or telephone. If a shop is not 
too far out they can go on our 
regular route. That way they 
know when we will be there 
and that they will find plenty of 
stock in the van; of course 
they can still order between 
visits and we send orders out 
the same day or the next 
morning at the latest. In most 
cases we find that the post gets 
everything where we want it 
very quickly but urgent orders 
can be sent by courier. This 
means that people often have 
their orders by the next 
morning." 




Final note 



While I was in the office 
another account was opened 
with PCS. A customer in Devon 
was dissatisfied with their 

E resent wholesaler and had 
eard from another dealer that 
PCS S.W. were fast and reliable. 
That customer would have the 
van round to him the next day. 
Andy tells me that they rarely 
have to go out and find new 
business now; their reputation 
is spreading and most new 
accounts come through 
recommendation. To Andy tnis 
is a good indication that he is 
still doing things right and will 
continue to do it this way grow- 
ing bigger and better faster. 



E 



More companies than 
ever before appeared 
at this year's PCW 
show. Your 
Commodore was 
there to sample their 
wares. 



SHOWDOWN 

AT 
OLYMPIA 




MICROMANIA HIT THE 
metropolis on 19th September. 
For five days a regular army of 
businessmen and journalists, 
grandads and eager schoolboys 
marched through the doors of 
Olympia 2. Deals were made, 
joysticks twiddled and books 
perused. The conglomeration 
of traders displaying their 
wares made it all too clear that 
Christmas starts early in the 
computer world. 

The 7th PCW show had 
arrived in town. Distributed 
over three floors of the 
exhibition centre with the 'big 
names' on the ground floor, 
business on the first level and 
entertainment on the second, 
this year's exhibition was hailed 
by the organisers as the'biggest 
and best yet. Showbiz reared 
its gaudy head with clowns and 
acrobats, American footballers 
with cheerleaders in low, 
Anirog's P.C. Fuzz on his 
unicycle and a trio of forlorn 
tiger cubs. But, under cover of 
the fun and frivolity, the stage 
was set for battle (not only on 
the computer screens!) and 
eyes were turned to the 
competition. 

Commodore live 

Even overcome by the sheer 
immensity of the occasion. 
Commodore fans had no 
excuse (unless they had made 
their entrance illicitly through 
a back window) for bypassing 
Commodore's latest products. 
Machines and peripherals, old 
and new, arose out of a 
patriotic sea of Commodore 
red, white and blue. 
Commodore's four stands, 
including also the new modem 
and a mass of software, were 
strategically placed to the left 
of the main entrance. 

But Commodore obviously 
face tough competition as 
illustrated by the vast output 
from software houses up and 
down the country. 



Sport and spies 

The football season got off to a 
kicking start with Addictive 
Games' 'Football Manager' and 
Argus Press Software's much 
advertised 'American Football'. 
Sport was also featured with 
Ocean's 'Daley Thompson's 
Decathlon' and Quicksilva's 
'Summer Games' based on this 
Summer's Olympic Games. 

Any budding Shoestrings or 
P.C. Plodds might have been 
tempted to enter the world of 
crime fighting as A&F's private 
eye, 'Gumshoe', Hill Mac- 
Gibbon's 'Special Agent' or 
Anirog's 'P.C. Fuzz'. The latter 
program uses Currah's 'Speech 
64', featuring two voices and a 
text-to-speech system, which 
was also launched to the public 
at the PCW show. 



Audiogenic and 
Beyond 

Audiogenic were out to prove 
that big business wasn't all fun 
and games with their three 
Commodore 64 business 
packages for the small 
businessman — 'Wordcraft 40', 
'Magpie' and 'Swift'. They also 
catered for anv aspiring artist 
with their Koala Pad. a graphics 
tablet which enables the 
production of full colour 
drawings and illustrations 
directly on the screen. But 
Audiogenic are still entren- 
ched in the games scene with 
six recent disc-based games — 
'Alice in Videoland' (an 
adventure based on Lewis 
Carroll's novel), 'Frantic 
Freddie', 'Pegasis', 'Forbidden 
Forest'. 'Aztec Challenge' and 





'Slinky'. 

Beyond, already renowned 
for their best-selling Spectrum 
games, 'Psytron' and'Tne Lords 
of Midnight', have released a 
64 version of 'Psytron', 'Psytron 
64', along with 'Ankh', 'Aztec' 
and 'Mr. Robot". Also in the 
offing at the time of going to 
press were 'My Chess II' and 
J Psi-Warrior\ 

Bubble Bus and co 

Parked on the ground floor, 
tucked behind the Com- 
modore stands, was Bubble Bus 
Software. 'Cave Fighter', 
described as 'an all action 
jumping, climbing and 
shooting game', is their latest 
release for the 64. but Bubble 
Bus were also showing off 
other favourites such as 
'Bumping Buggies', 'Flying 
Featners' and 'Widows 
Revenge' for the 64 and 
Antimatter Splatter', 'Exter- 
minator' and The Catch' for 
the VIC 20. 

Creative Sparks sank from 
the sublime, with Macbeth', to 
the ridiculous, with 'Danger 



c 




I GUMSHOE 




how report 




Mouse in Double Trouble', 
based on the popular TV 
carloon character. And 
Microdeal were trying to bury 
poor old Cuthbert again witn 
their new Commodore 64 
game, 'Cuthbert Enters the 
Tombs of Doom'. 

Channel 8 shouldn't have 
alienated too many of their fans 
with three new arcade games 
for the 64. 'Phase 4' and 'Time 
Zone' follow similar alien- 
attack themes and, in Channel 
8's other space game, as 
'Borzak the Amazing Bug-Eyed 
Beastie from Betelgeuse' falls 
out of his spaceship into a 
marsh on earth, you must assist 
him back to the ship. 

Hero time 



Action-packed adventure was 
certainly in the air with Elite's 
'Kokotoni Wllf, Melbourne 
House's 'Zim Sala Bim' and 
Ocean's 'High Noon'. As 
Kokotoni Wilf, your aim is to 
recover all the pieces of the 
legendary Dragon Amulet 
whilst dodging the dangers 
which cross your path. In 'Zim 
Sala Bim', you move your 
character through the Arabian 
desert and, with luck, into the 
Sultan's seemingly impene- 
trable palace. Ana 'High Noon' 
is a Western Adventure 
whereby you must keep the 
peace in a frontier town by 
shooting the bandits and 
preventing them from 
escaping with the girls or gold; 
it features an aptly named 
character — Riga Mortis, the 
undertaker! 

Bandits also featured in 
New Generation's 'Cliff Han- 
ger' in which our hero, 
Cliff, must stop the evil 



bandits from shooting up 
the canyon. It features 
cartoon-style sequences and 
humour, based on the popular 
road-runner series. 

Animal magic 

Things turned hairy again at 
Llamasoft with Geoff Minter's 
latest offering, 'Ancipital'. Mr. 
Minter describes the Ancipital 
as 'the harassed-looking little 
half-man, half-goat creature 
which scuttles across the 
planetary surface' in Sheep in 
Space and the game includes 
100 rooms, goats to collect and 
the villain of the piece, Rory 
the Vicious Guinea Pig. 
Quicksilva have also gone 
animal crackers with their 



Commodore 
Attack'. 



version 



COMMODORE 64 



Final offerings 

Bikes and cars always lend well 
to computer games and this 
show was certainly no 
exception with Martech s 'The 
Official Eddie Kidd Jump 
Challenge', Micro Powers 
Stock Car' and 'Car Journey' 
from Hill MacGibbon. 

Also new from Micro Power 
came 'Bumble Bee' for the 64. 
But these had to share the 
limelight with other Micro 
Power gems like 'Ghouls', 
'Cybertron Mission', 'Felix in 
the Factory' and 'Swoop'. 

Activision. one of the 
ghts in 64 software. 



also exhibited some of their top 
games for the 64 — 'Pitfall II , 
^Beamrider', 'Hero', 'Zenji', 
'Toy Bizarre' — as well as their 
Designer' Pencil which enables 
you to draw on the screen with 
a joystick 

And there were many more 
besides — Virgin Games 
(recent purchasers of the 
Rabbit brand name and logo) 
with 'Terrorist' and 'Falcon 
Patrol 2', a vast array of software 
from U.S. Gold such as 
Forbidden Forest' and Aztec 
Challenge', and graphics 
tablets from British Micros 
(Grafpad) and Touchmaster, as 
well as shelf upon shelf of 
books and magazines (al- 
though only one of these, of 
course, was a worthy 
purchase!) 



Widows Revenge 

COMMODORE 64 




As seen in the national press XH© PfiZGSZ 



en in th e na tiona 




You could win £2,500 to be spent 
on a dream holiday of your choice 
for you and your family! 

Second prize — a complete Canon 
portable video outfit worth £1 ,300. 

Third prize— a BBC Model B micro 
computer plus software worth £450. 

Fourth prize— Minolta X700 camera 
with a 50mm lens and flashgun, 
worth £280. 






# 



How to 
enter: 

Just identify the twelve 
objects pictured 
opposite.... 

H I NT —the Arg us Specialist 

Magazines listed below might give you aclueT 

Games Computing 
Photoplay Movies and Video 
ZX Computing 



Electronics Today International 
Personal Computing Today 
Movie Maker 
Your Model Railway 
Clocks 

Home Computing Weekly 
Beatbox 

Ham Radio Today 

Electronics 

35mm Photography 

Model Cars 

Woodworker 



Military Modelling 
Hi-Fi Now 1 
Wine maker 
Citizens' Band 
Model Boats 
Video Today 
Popular Cratts 
Which Video? 
Your Commodore 



and write your (one-word) answers in the spaces provided oi 
the coupon. Forinstance, if you think thatnumber9isa 
record , write ' record' in the space next to 9 on the coupon ani 
soon. Then tell us in upto 20 words why MAGAZINES 
MAKE IDEAL HOLIDAY READING. Complete the coupon 
in BLOCK LETTERS, and send it to: DREAM HOLIDAY 
COMPETITION. Argus Specialist Publications Ltd., 
No 1 Golden Square, London W1R3AB. to reach us no later 
than 31st December 1984. 

Competition rules 

1 The competition s open 10 all UK and Fire readers ercepl emptoyees ol Argus Speotilisl Publications Lid 
Iheir rmnle's and dislrimlois 

2 As long as at) original coupon Irom the maga^nefs) or your choice is used lor each entry Ihere is no WW 
to Pie number olonlnospor person PnoKcopted coupons will not bp accepted 

3 All entries must be postmarked belore 3 '9 Docembor I9A4 

A I ho pn/es will be awarded 10 Ihe first lour enlranls who doniily the twelve objects correctly and whose 
completed sentence istudged iho mosi apt and ongmal 

b No correspondence w* be entered mlo aboul Ihe compclilon results the judges deosion is fcnal 
6 Winners will be nohhed by posl and Ihe resuK w* be published *i a future issue ol this magazine 



The 12 objects are 

1 

4 

7 

10 



2 

5 

8 

11 



3. . 

6. . 
« 

9. . 
12. 



Magazines make ideal holiday reading because (up to 20 words) 



AGE (if under 18). 



NAMEfBLOCK LETTERS) 

ADDRESS 

Send to DREAM HOLIDAY COMPETITION, Argus Specialist Publications, No 1 Golden Square, London W1 R 3AB 




NAVIGATOR 
ftf.SMHM 
hjM-taKaEMif 



EXECUTIVE OFFICER 
□met lm»>n«» 



SCIENCE OFFICER 

SKrtiiv* umiuMM Mfani- 

OcaMn*r«09cai 



CAPTAIN 
Sow Dtpvrtitt*. Coungnu- 
EictHM ItMv 



ENGINEERING OFFICER 
°ny Strang Law I Q 
PoltntWlNMMftM 



JROOfFKER 
AuKwaMln, MnoimM 



ENGINEERING OFFICER 
Unl-iiitwoilhy. IMbpptta 



THE CREW 

Personnel 
files follow — 
yours to 
command — 
well almost... 



SPECTRUM 48K- CBM64 



Featuring 
the unique 

Personality Control System 



No. 1 Golden Sauare. London W1R 3AB. TeleDhone 01-437 0626 



Simon Palmer unlocks 
the mind of John 
Wagstaff, rock star 
turned programmer, 

and the brain behind 
Craig Communications' 
System 15000. 



MID-19B3 WITNESSED THE 
launch of Flight Zero-One- 
Five, a flight simulator for the 
unexpanded VIC-20. It 
contained no graphics but 
proved that outstanding 
software could be reproduced 
in just 3.5K of memory. Since its 
release it has sold upwards of 
16.000, and is still selling. 

Its creator was John 
Wagstaff. A very tall gentleman 
with long black hair, he started 
employment at the age of 17 on 
a fairground with his parents. 
John then became a musician, 
receiving gold discs for songs 
he had written. He earned 
fame and fortune in Germany 
(anyone who has ever heard of 
Lee Kristofferson will realise 
that Lee and John are one and 
the same). But he soon 
discovered that, even though 
he had 'made it' in Europe to a 
certain extent, the money did 
not immediately come pouring 
in. With cash running low and 
to stop himself from going 
mad, John bought a VIC-20 for 
£200. He taught himself to 
program and, a year or so later, 
released Flight Zero-One 
Five followed by Whirlwind 
One-Five, which achieved 
moderate success, and, finally, 
by his latest baby. System 15000. 
a communications game. 

Craig Communications 

The first company to accept 
John's software and distribute 
it was N.K.K., where David 
Giles was already working as 
the sales-force of this two-man 
operation. His job was to visit 
shops and persuade them to 
buy various titles distributed by 
N.K.K.. After two months, 
David's efforts proved so 
successful that N.K.K. were 
bought up by a larger concern 
— Ferranti & Craig, who had 
been looking for a company to 
handle distribution. Richard 
Craig, the final ingredient in 
the 'mix' spotted N.K.K. 

Throughout this change, 
John Wagstaff's software was 
still selling and, finally. System 
15000 was released. In May 
1984, Richard Craig left Ferranti 



BEHIND 
CLOSED 









& Craig taking with him David 
Giles and, inevitably, John's 
software. A brand new 
company emerged from this 
re-shuffle — Craig Com- 
munications with David Giles 
in charge of the software side 
and Richard Craig responsible 
for the rest of the organisation. 
The re-release of all John 
Wagstaff's software followed 
swiftly, with a better style 
presentation for System 15000 
and careful attention it had not 
received under Ferranti & 



Craig's guidance. The stage was 
now set for System 15000 to 
revolutionise adventure 
games. 

System 15000 

System 15000 is a new breed of 
game. Whereas with a normal 
adventure exercise the game 
can whish you off to an island 
or transform you into a 
detective in hot pursuit of a 
murderer. System 15000 turns 
your computer into a 



computer, the monitor into a 
monitor and plugs an 
imaginary modem into the 
back of the computer, thus 
introducing you to the B.B.C.'s 
'Bird of Prey typesituation. It is 
such a simple idea yet no-one 
has thought of it before now. 

System 15000 also differs 
from other adventures in that, 
since it is a modem simulation 
game, you can, by dialling a 
number, return again and 
again to various computers at 
any time in the game. It is a 



Profile 



genuine real-lime commun- 
ications investigation. For 
those not familiar with it 
already, the following synopsis 
should arouse both interest 
and enthusiasm. 

Your friend's company has 
been ripped off to the tune of 
1,500,000 dollars in a deal it has 
negotiated. A colleague has 
contacted you, giving System 
15000 and a modem utility and 
asking you to help get the 
money back into the swindled 
company's bank account. He 
also provides one telephone 
number, an access coae and 
two names; armed with this 
information, you open your 
investigation! 

Sitting comfortably op- 
posite |ohn Wagstaff in the 
pleasant surroundings of his 
living room, trusty pen poised 
above paper, I asked him 
where he found the idea for 
System 15000. 

"It just came to me and. at 
first. I could not believe it. So 
obvious, yet after almost endles 
searching through magazines 
and the like, I could not find 
any indications of other people 
being there first". 

How long had it taken him 
to write it from the initial 
concept to the finished 
product? "About nine months 
of bleeding eves" was the 
reply. David Giles appeared 
and weighed in with: "John 
wouian t even tell me what it 
was until he had completed it 
ready for playing — and even 
then he refused to tell me how 
to proceed. He just said 'play 
it" . I must agreeethat detailed 
instructions are very sparse but, 
according to John, this is totally 
intentional. With the old-age 
consideration of value-for- 
money. I asked whether the 
price was not a little steep — 
isn't £12.95 somewhat excessive 
for a single program? John's 
reply was quite logical and 
emphatic. 

"People can, and some- 
times do, pay in excess of £12.95 
for a hard-back book of merit 
and feel that they are getting 
good value. The same applies 
to good software with its 
underlying creative base, 
intellectual challenge and 
complexity. If it gives you a 
good run for your money, 
where's the argument?" 

I personally do not need 
any persuasion to this 
viewpoint, having myself 
reviewed quite a number of 
games programs and con- 
stantly wishing for more writers 
of John's calibre and standards. 
John emphasised that heaimed 
to produce good quality 
software rather than higher 
quantities of less meritorious 
products. He regards with 
stronR dislike the companies 




who flood the market with 
mediocre products, thus 
devaluing a positive potential 
for intellectual and. at the same 
time, entertaining pursuits. 

"I owe a great deal to the 
good people who buy my 
software — it pays my food bills 
and stops me from starving. 
That, after all, is how I got my 
first computer. I wasn't having 
much success in getting my 
money for the records I 
produced for the German 
market, and we were literally 
starving. I am sure that buying 
that computer did stop me 
from going mad". 

Reminding him of his 
earlier statement that it took 
nine months to write System 
15000. I asked if he had 
experienced any problems. He 
chuckled: 

"I have a little saying that 
every programmer should 
write out and place above his 
computer THERE'S ALWAYS 



ONE MORE BUG' ". 

j pressed him, and he 
continued: 

"The telephone aspect of 
the game did present a 
problem or two; one number 
which I initiated for the 
American section of the game 
turned out to be 'Dial a Blue 
Joke'! I changed it, but quick! I 
also had to get permission from 
the various telecommuni- 
cation authorities for the useof 
their different dialling and 
engaged tones for the U.K. and 
overseas. 



Music and computers 

Apart from John's first 
computer warding off 
imminent insanity, were there 
any other reasons for deciding 
on the purhcase?" 

"Yes, I am in the 
entertainment business and. at 



the personal level, they are 
bought mostly for entertain- 
ment and have become 
instruments, both audio and 
visual for entertainment 
purposes. Music is after all a 
form of software, a complex 
writing sytle embracing almost 
infinite interpretive functions 
with both intellectual and 
entertainment potential. 
Computers and software can 
be made to perform the same 
functions, the only difference 
being that computers are 
interactive with the operator". 

John, as I have already said, 
is an accomplished musician. 
On the wall above where we sit 
hangs a gold record and. 
alongside, a gold cassette for 
10,000 copies sold of Flight 
Zero-One-Five presented, 
ironically enough, by Ferranti 
& Craig! 

Does he see computers 
making an even bigger impact 
in the music arena? 



"If you think about it, 
computers are already in music 
in a very big way. In keyboards, 
drum machines and mixing 
desks. Synthesised sound is 
now an established medium, 
having progressed from an 
embellishment role such as 
echo-boxes to the present-day 
reproduction capability of 
musical instruments, and 
onward to new and previously 
unheard of tones". 

John's first encounter with 
computers was in fact in the 
studio where he worked on his 
recordings. 'Apples' were used 
as an integral part of their 
mixing system. To illustrate this 
point, he led me into another 
room and showed me histrusty 
CBM 64 which he had linked 
up, via sequential circuits, 
MIDI interface and software, to 
a Poly-800 keyboard, drum 
machines and mixing desks. He 
then gave me a thoroughly 
competent demonstration of 
some of the capabilities of this 
set-up. Impressed? I certainly 
was! (If this has aroused your 
interest in MIDI systems, reach 
for your back issues of 'Your 
Commodore' and re-read our 
MIDI articles). 

Other ideas 

I asked John whether he 
thought the CBM 64 was an 
easy machine to handle for 
programming? He replied that, 
although it is a powerful 



machine with much more 
unexploited potential, there is 
the hurdle of Commodore 
BASIC to negotiate every time. 

Alongside all this music 
equipment, I could not fail to 
notice a large amount of 
machinery for video editing. 
When asked whether he had 
yet combined computers and 
videos, he answered that the 
closest he had got so far was in 
the use of slide projectors 
linked with a music track and 
controlled by a computer. It is 
an idea which has been used 
before for all sorts of purposes 
in a variety of settings from 
schools to concerts. He opined 
that if the technology could 
advance further, he had some 
ideas of his own which he 
would like to try: "What I'm 
waiting for is a computer that 
can handle those ideas!". I 
could not help thinking of the 
current use of computers in 
stage presentations to control 
lighting systems such as the 
Vari-light used by Genesis. 

School chips 

Leaving the musical sur- 
roundings, we rejoined David 
in the lounge. Would John 
consider writing software for 
the education market seeing 
that the coming generations 
will be living and influenced by 
computers on an ever- 
increasing scale? He has not yet 
seriously considered this but 



'SVSTEM 

i5t>dt> 



V 



the real time 






fUU SOUND AND COLOUR 



VlC7.0 



FULL SO 



does agree that imparting 
knowledge does not have to be 
boring! At this point, David 
interjected: "My kid sees a 
computer and recognises it 
without any problem. It seems 
that children as young as three 
aren't scared of them". John 
believes thai, had a VIC-20 
been around five years earlier, 
it would have been regarded 
with awe as though it were a 
mainframe in a plastic box! 
However, the improved 
understanding of the com- 
puter's role in present-day life 
is reducing the mystique which 
hitherto surrounded these 
machines, and the unquestion- 
ing acceptance of computers, 
particularly by the younger 
generation, is fast consolid- 
ating their influence and 
impact on our way of life. One 
can only hope it will be 
completely beneficial. 
Inevitably, the older folk have 
trouble in appreciating and 
accepting them, but this has 
always been the case through 
history with every develop- 
ment since Man first used a 
fallen branch to lever away that 
obstinate lump of rock which 
barred the way into a likely 
looking cave! 

Reputation 

We finally returned to the 
subject of John Wagstaff and 
Craig Communications. Did 
they worry about their 
reputation? Yes, they did — 
and to a surprising extent. Said 
David, "John used to check 
one in ten of every Flight Zero- 
One-Fives before despatch". 



"I used to sit with my VIC-20 
plugged in with a tall pile of 
programs on one side and the 
passed' software on the 
other", added John. This 
certainly paid dividends: of 
16,000 copies sold, only about 
200 were returned and, of 
these, roughly 180 were 
customer errors. All of which 
amply demonstrates John's 
philosophy of value for money, 
initiated during his earlier 
struggles as a recording artist. 

None of John's software has 
his name on it, his reason 
being: "Because some people 
must have their names on 

Eroducts as an ego trip, but a 
alance must be maintained; 
others sign their work in the 
hope of recognition and 
consequently more employ- 
ment". John likes to think that, 
maybe, his work is so highly 
individual it does not need a 
'tag'. 

• 

And finally 

I asked John about the future. 
Would there be a sequel to 
System 15000? "Almost 
certainly". The quotes are 
closed because he did divulge 
some of his ideas for a follow- 
up but, I think it would be 
unfair to John, and it would 
spoil your fun, were I to pre- 
empt his next product. 

I hope that this insight into 
the mind of John Wagstaff will 
assure you that not everyone is 
in the software business to rip 
you off. This man has standards 
and I think that things to come 
will prove to be as much 'value 
for money' as System 15000. 




AT LAST 1 TAPE 2 MACHINES 



COMMODORE 64 VIC 20 




MINIPEDES 

It is the height of summer and the 
garden is buzzing with bees and 
bugs. Minipede. a mutant 
mushroom monster advances 
relentlessly towards you. 
devouring everything in its path. 1 5 
screens of fast and furious action 
make Minipedes a real challenge to 
the arcade enthusiasts. 
Commodore 64 - VIC 20 16K 

J.S. or K B. £5.95 



Experience the thrills of the gambling cenirA of the 
world from the comfort of your own armchair. Both 
versions include features such as spinning reels, hold, 
number-feature nudges, gamble /collect, spin score and 
hi-score. The Commodore 64 version has additional 
features, nudge, reward lucky 3, step-a-win and hi- 
score tables. 

As with any arcade machine the odds are stacked 
against youl 



Tom is trapped in a scrolling maze 
populated by loathsome creatures, 
guardians of the lost treasures of 
the Magezam Six separate 
screens, five levels of difficulty and 
four player option provide an 
exciting challenge for the whole 
family. Another stunner from the 
author of BONGO! 
(1 to 4 players) 

Commodore 64 - VIC 20 16K 

J.S. £5 95 



Commodore 64 - VIC 20 1 6K 



K B £5 95 




J.S. AND KEYBOARD 
£7.95 




CSAMftVICSOMC 






J.S. 



£7.95 



J.S. AND KEYBOARD 
£5.95 



J.S. 



or KEYBOARD 
£7.95 



J.S 



£7.95 



COMMODORE 64 



VIC 20 



TRADE ENQUIRIES: ANIROG SOFTWARE LTD. 29 WEST HILL DARTFORD KENT (0322)92513/8 
MAIL ORDER 8 HIGH STREET HORLEY SURREY 24 HOUR CREDIT CARD SALES HORLEY (02934) 6083 
PAYMENT BY CHEQUE P.O. ACCESS/VISA 50p POSTAGE & PACKAGING 




- the sophisticated spreadsheet ! 



Easy to learn, easy to use - something that can't be said of many business programs. 
But it's true of all the programs in the BUSICALC series. 

BUSICALC 3 can handle all sorts of jobs - budgets, expenditure analysis, stock lists, 
price lists, and product costing are just a few of the possibilities. TTiree-dimensional 
formulae automatically access data stored on disk, so that you can easily pull 
together information from several different sheets and summarise or manipulate it. 

It's simple to transfer data to other programs such as Easy Script. And you can use 
virtually any printer with BUSICALC 3, whether dot matrix or daisy wheel. 
Commodore or non-Commodore. 

For the CBM 64 and PET/CBM 4000 & 8000 series. 

Available through dealers or from: 

Supersoft, Winchester House, Canning Road, Harrow HA3 7SJ 
Phone 01-861 1 166 for more details and a free catalogue.